V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
zapll
V2EX  ›  分享创造

ChatMCP: 可能是第一个支持 MCP 协议的开源 AI 客户端

  •  
  •   zapll · 1 天前 · 1634 次点击

    ChatMCP: 开源的 MCP 协议客户端 🚀

    大家好呀! 👋 我是 ChatMCP 的作者。最近一直在关注 Anthropic 的 MCP 协议, 这个协议真的太棒了, 让我忍不住想要动手实现一个开源版本。经过一段时间的开发, 很高兴跟大家分享我的作品 - ChatMCP, 这可是目前第一个开源的 MCP 客户端实现哦! 🎉

    GithHub: https://github.com/daodao97/chatmcp 求 Star⭐️

    • Chat 中 访问本地 sqlite 数据库的样例

    ChatMCP Preview

    • 更方便的管理 MCP Server (建设中)

    ChatMCP Setting Preview

    MCP 能解决什么问题? 🤔

    有了 MCP,AI 简直就像获得了超能力一样,可以轻松实现:

    • 📊 查询分析本地数据库
    • 🐙 管理 GitHub 仓库(创建 Issue 、PR 什么的都不在话下)
    • 💬 总结微信聊天记录
    • 📂 操作本地文件,得心应手
    • 🥡 想吃外卖?一键搞定!(支持美团、饿了么)
    • 🛒 变身智能购物助手(自动比价、帮你省钱)
    • 🏠 智能家居随心控(灯光、空调、窗帘统统搞定)
    • 💰 管理个人财务(分析账单、规划消费)
    • 💪 健康数据分析(运动、睡眠质量都给你整明白)

    有了 MCP 统统都能接入大模型, 是不是很有想象空间, 哈哈哈

    以前要实现这些功能,每个数据源都需要单独开发接入。MCP 提供了统一的标准,大大降低了开发成本。

    为什么需要开源客户端?

    目前 MCP 只能在 Claude 官方客户端使用, 这带来一些局限:

    1. Claude 账号经常被封, 泪目, 我的又被封了
    2. 不能使用其他的 LLM 模型

    ChatMCP 作为开源方案,提供了更多选择:

    • 不依赖特定服务商
    • 支持多种 LLM 模型
    • 完全本地化, 保证隐私
    • 支持自定义开发

    ChatMCP 主要功能

    • 多模型支持(OpenAI 、Claude 、OLLama 等)
    • MCP 服务器管理
    • 本地聊天记录
    • RAG 知识库集成
    • 更漂亮的用户界面

    快速开始 🚗

    点我下载

    1. ⬇️ 下载安装(目前只支持 MacOS 哦),
    2. 🔑 配置你的 API Key
    3. 🔧 装好需要的 MCP 服务
    4. ✨ 开始体验神奇功能!

    开发计划 🗓️

    目前计划:

    • 🪟 支持 Windows/Linux
    • 🔌 接入更多 AI 模型
    • 🌱 建设 MCP 服务生态, MCP Server 的自动安装

    写在最后 💝

    开发 ChatMCP 的过程中,我真的学到了很多。希望这个项目能帮助到对 MCP 感兴趣的小伙伴们。欢迎大家来 GitHub 上交流,一起让 ChatMCP 变得更好!

    项目地址: https://github.com/daodao97/chatmcp ⭐️

    如果觉得有帮助的话,求个 star 呀~ 😘

    第 1 条附言  ·  1 天前
    macos 安装闪退的问题已经修复, 下载 fixed 版本 https://github.com/daodao97/chatmcp/releases/tag/v0.0.1-alpha
    27 条回复    2024-12-10 18:07:28 +08:00
    cowcomic
        1
    cowcomic  
       1 天前
    点个赞,收藏一下,之前看到 MCP 的时候就觉得这个很有用
    能接入 ollama 这个太棒了
    tpcy
        2
    tpcy  
       1 天前
    支持!已 star
    clemente
        3
    clemente  
       1 天前
    用 dart flutter 做客户端和 electron 有什么区别吗
    zapll
        4
    zapll  
    OP
       1 天前
    @cowcomic 具体介入 ollama 的部分还没实现, todo 了

    @clemente 只从使用层面的话, 实现了同样的功能, 是没有差别的, 开发层面就看开发者熟系那个了
    foufoufm
        5
    foufoufm  
       1 天前
    @zapll 下载了,但是我的 mbp 打开闪退,从 github 上添加好友了,但是没有通过
    shil949
        6
    shil949  
       1 天前
    mbp 打开闪退
    crokily
        7
    crokily  
       1 天前
    居然还能支持不同的模型!想想也是毕竟 MCP 只是个协议,不过也是第一次见到把它用在其他模型上。
    早早就在推上关注了作者,因为感觉想法很领先,目前确实没见过有把 MCP 往这种平台式设计的想法, 大多数都还在尝试 MCP 的单独应用设计。一个好用的开放平台比单独的应用更有前景啊
    期待一下 Win 端
    zapll
        8
    zapll  
    OP
       1 天前
    @foufoufm @shil949 有没有日志可以提供, 我是 M3 下打包的
    foufoufm
        9
    foufoufm  
       1 天前
    @zapll 怀疑是环境问题,查看 readme 后发现没有预装环境,目前没时间验证,下午再看看,通过个微信好友呗~
    zapll
        10
    zapll  
    OP
       1 天前
    @foufoufm 推上私信我一下 https://x.com/daodao97_
    swaggeek
        11
    swaggeek  
       1 天前
    目前支持接入除 Claude 之外的 provider 么?
    woorz
        12
    woorz  
       1 天前
    这个不就是 rag 吗? mcp 之前都可以实现这些的啊
    jimmy3780
        13
    jimmy3780  
       1 天前 via Android
    @woorz MCP 是一套标准,有点类似于微软的 LSP 。它想解决的事情应该是让开发者只需要开发一次基于 MCP 的插件,任何支持 MCP 的宿主软件都可以直接使用这些现有插件
    thetbw
        14
    thetbw  
       1 天前
    学到了
    swaggeek
        15
    swaggeek  
       1 天前
    目前支持接入除 Claude 之外的 provider 么?
    stonesirsir
        16
    stonesirsir  
       1 天前
    已经 star
    zapll
        17
    zapll  
    OP
       1 天前
    @swaggeek 目前只实现了 openai 的模型接入, 其他的慢慢来
    swaggeek
        18
    swaggeek  
       1 天前
    可以,我看下代码实现。也想按 MCP 的协议去搞一些其他模型的
    san3
        19
    san3  
       1 天前
    已 star
    mortal
        20
    mortal  
       1 天前
    为啥 brew 没有这两个包啊
    san3
        21
    san3  
       1 天前
    uvx npx 是什么命令? brew 提示没有这俩命令
    marquina
        22
    marquina  
       1 天前
    MCP 的协议大佬是在哪看的?我想用在自己的助手 bot 上,有啥推荐的文档吗
    zapll
        23
    zapll  
    OP
       1 天前
    @san3

    # uvx
    brew install uv

    # npx
    brew install node

    @marquina 得有一个支持 mcp 的客户端 chatmcp 这种
    san3
        24
    san3  
       1 天前
    @zapll 软件打开后,install 模块的时候提示 uvx 不存在。你这为什么叫 uvx ? 这不就是一个 python 包管理器吗?本地别名?
    jimmy3780
        25
    jimmy3780  
       1 天前 via iPhone
    @san3 因为用的是 uv 啊 🤔,不是因为 op 想叫这个
    san3
        26
    san3  
       1 天前
    @jimmy3780 了解。uv 和 uvx 是一起的。但是一个 app 应用依赖命令行,环境变量还是不能修改的:/usr/bin:/bin:/usr/sbin:/sbin ,是不是需要完善一下?
    zapll
        27
    zapll  
    OP
       1 天前
    @san3 目前内置了常见的 bin 目录, 后续增加一个自定义配置的功能
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2718 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 14:33 · PVG 22:33 · LAX 06:33 · JFK 09:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.