MCP 协议:AI Agent 的「USB-C」时刻到了吗?

2024 年 11 月,Anthropic 推出了 MCP(Model Context Protocol)。当时没太多人关注,以为是又一个「大厂自嗨」的标准。

但一年多过去,情况变了。

从「各自为政」到「统一接口」

以前每个 AI 应用对接外部工具,都要写一套适配代码。OpenAI 有 Function Calling,Google 有 Tool Use,各家 API 格式不统一,开发者苦不堪言。

MCP 的思路很简单:就像 USB-C 统一了充电接口一样,给 AI Agent 和外部系统的通信也定一个统一标准。

核心概念就三个:

  • Resources:外部数据源(数据库、文件、API)
  • Tools:AI 可调用的功能
  • Prompts:预定义的交互模板

说白了,就是让 AI 应用和外部系统的对接,从「每个都要单独谈」变成「插上线就能用」。

为什么现在开始火了?

两个原因。

第一,Agent 确实需要这个。 2026 年的 AI 不再是「聊天机器人」了,而是要「动手做事」的 Agent。Agent 需要查数据库、调用 API、操作文件,没有统一协议,根本玩不转。

第二,生态开始形成。 Claude Desktop、Cursor、Cline 这些主流工具都开始支持 MCP。GitHub 上的 MCP server 数量从年初的几十个涨到了现在的几百个。

这事儿挺有意思的——MCP 不是官方标准组织制定的,是 Anthropic 一家推的。但因为是开源的、设计得也合理,大家就开始用脚投票了。

实际用起来怎么样?

我自己试了试,感受是:理想很丰满,现实还有差距。

好用的场景

  • 本地文件操作(读写、搜索)
  • 数据库查询(SQL 客户端)
  • 简单的 API 调用

还凑合的场景

  • 复杂的业务流程编排
  • 需要状态管理的长时间任务

坑在哪

  • 文档还不够完善,有些 server 的配置要猜
  • 错误处理机制比较弱,出问题不好 debug
  • 权限控制粒度不够细

和 Function Calling 的区别

很多人问:MCP 和 OpenAI 的 Function Calling 有什么区别?

Function Calling 是「模型层面的能力」——模型知道可以调用函数,但具体怎么调用、调用什么,是应用层的事。

MCP 是「协议层面的标准」——定义了 Agent 和外部系统如何发现、通信、返回结果。

打个比方:Function Calling 是「你会用筷子」,MCP 是「中餐馆的餐具标准」。前者是个人技能,后者是行业规范。

未来会怎样?

我的判断是:MCP 有很大的概率成为事实标准,但不会是唯一标准。

就像编程语言有 Python、Java、Go 一样,AI Agent 的通信协议也会有多种选择。MCP 现在领先,但 Google 的 A2A、OpenAI 的 Agents SDK 也在推自己的方案。

对开发者来说,最好的策略是:了解 MCP,但不要 all-in。保持协议无关的设计,未来切换成本会低很多。

这事儿你怎么看?你觉得 MCP 能成为 AI 时代的 HTTP 吗?