Hey, 我是 沉浸式趣谈 本文首发于 [沉浸式趣谈] ,我的个人博客 https://yaolifeng.com 也同步更新。 转载请在文章开头注明出处和版权信息。 如果本文对您有所帮助,请 点赞、评论、转发,支持一下,谢谢!
说实话,我第一次听说 MCP 的时候,还以为是《创:战纪》里那个控制数字世界的程序呢。 理想中的 AI 编程助手 虽然现在 Cursor 已经能帮我们自动生成代码,但说真的,这离我心目中的理想编程工具还差那么一截。 我心里的完美 AI 编程助手应该是什么样的呢? 大概是这样:
我正在敲代码,突然想查一下本地数据库里的表结构,直接问 AI:"帮我看看用户表有哪些字段?",然后它就给我列出来了。 代码报错了?不用慌,一键把错误信息丢给 AI ,它立马帮我搜索解决方案,省去我自己复制粘贴到 Google 的麻烦。 写完一段关键代码,想让同事帮忙看看?直接让 AI 把代码发到钉钉或者微信,顺便帮我做个简单的 Code Review 。 最爽的是,等我写完所有代码,AI 直接帮我打包、部署、上线,从此告别繁琐的发布流程。
这听起来像是做梦?不,这就是 MCP 要实现的愿景! MCP 到底是个啥? 模型上下文协议( MCP:Model Context Protocol )是 Anthropic 公司(就是开发 Claude 的那家)推出的一个开放标准。 简单来说,它让 AI 能够通过统一的方式访问各种资源,不管是本地的(比如你电脑上的文件、数据库)还是远程的(比如 Slack 、GitHub API )。 官方把 MCP 比喻成 AI 应用的 USB-C 接口,我觉得这个比喻挺贴切的。 就像 USB-C 让你的笔记本能连接各种外设一样,MCP 让 AI 能连接各种服务和资源。 MCP 的三大核心功能 MCP 主要提供三大核心功能:
- 工具( Tools ) 这个最直观,就是让 AI 能执行具体操作。 比如查天气、发邮件、调用 API 、执行代码等等。 想象一下,你对 AI 说"帮我发个邮件给张三",它真的能发,而不只是生成一段邮件内容。
- 资源( Resources ) 为 AI 提供参考信息。 比如让 AI 读取你的项目文件、查询数据库、获取网页内容等。 这样 AI 就能基于真实数据给你建议,而不是凭空想象。
- 提示( Prompts ) 这个其实就是预设的对话模板。 比如你可以设置一些快捷命令或标准工作流,让 AI 按照特定方式回应特定请求。 MCP 的四大优势 相比其他 AI 集成方案,MCP 有几个明显优势:
- 通用性 MCP 不绑定特定 AI 模型,理论上支持任何 AI 应用。 今天你用 Claude ,明天换成 GPT ,后天换成国产大模型,都能用同一套 MCP 接口。
- 标准化 MCP 使用 JSON-RPC 协议,这是一个成熟的技术标准,确保了兼容性和一致性。 不用担心各家 AI 厂商各搞一套标准导致的混乱。
- 灵活性 MCP 支持双向通信,允许事件和通知机制。 这意味着不只是你问 AI 答,AI 也可以主动给你推送信息。
- 安全性 MCP 提供细粒度的权限控制,确保 AI 只能访问你允许的资源。 不用担心 AI 乱翻你的文件或者擅自执行危险操作。 MCP 开发方式 如果你想尝试开发 MCP 应用,有几种方式:
直接使用 JSON-RPC 协议:最硬核的方法是直接裸写 MCP 服务器。这有点像不用框架直接写原生 JavaScript ,灵活但费劲。 使用官方 SDK:更常见的方式是使用官方提供的 SDK ,目前支持 TypeScript 和 Python 等语言。SDK 会自动处理协议细节,提供类型安全和错误处理,让你专注于业务逻辑。
结语:MCP 的未来展望 说实话,我最近正打算尝试用 MCP 做个小工具,连接我的本地代码库和笔记系统。 虽然还在学习阶段,但已经能感受到它的潜力。 总之,MCP 可能是 AI 编程工具的下一个重要发展方向。 它不仅让 AI 更强大,还让我们的工作流更顺畅。 虽然现在还处于早期阶段,但未来可期!