一、什么是 MCP

MCP 的全称是 Model Context Protocol,由 Anthropic 在 2024 年 11 月提出并开源。

它的目标很直接:解决大模型与外部数据源、工具之间的标准化通信问题。

过去常见的问题是:

  • 数据得手动复制粘贴;
  • 每接一个新工具都要单独开发一套接口;
  • 系统越做越复杂,越难复用。

MCP 的思路是:只要客户端和服务端都遵循这套协议,模型就能更统一地接入外部世界。

二、MCP 解决了什么问题

它解决的不是“模型本身不聪明”,而是“模型和外部能力连接得太零散”。

有了 MCP 之后,AI 可以更自然地连接:

  • 文件系统;
  • 本地数据;
  • Web 服务;
  • 开发工具;
  • 浏览器自动化;
  • 办公协作与社区生态。

这让智能体真正有机会从“会说话”走向“会做事”。

image-20250906101312608

三、MCP 和 Function Calling 的区别

这两个概念很容易混在一起,但它们不是一回事。

类别 MCP Function Calling
性质 协议 功能
范围 多数据源、多功能统一接入 面向单一模型能力扩展
目标 提供统一接口和互操作性 让模型调用特定函数
开发方式 一套协议适配多场景 每个能力往往要单独开发
复用性 相对低

一句话理解:

  • Function Calling 更像“给某个模型接一组函数”;
  • MCP 更像“定义一套模型接外部能力的通用协议”。

四、MCP 的架构

MCP 采用的是客户端-服务器架构。

4.1 MCP 主机(Host)

例如 Claude Desktop、IDE、聊天应用等。它是用户直接接触的入口。

4.2 MCP 客户端(Client)

客户端通常嵌在主机里,负责把主机请求按 MCP 协议发给外部服务器。

4.3 MCP 服务器(Server)

部署在资源侧,负责真正提供工具、资源和提示能力,并把结果标准化返回。

五、MCP 的三类核心能力

5.1 工具(Tools)

用于执行操作,例如:

  • 查询数据库;
  • 调用地图服务;
  • 发送邮件;
  • 做计算。

5.2 资源(Resources)

用于提供结构化数据,例如:

  • 文件内容;
  • 数据库结构;
  • API 返回数据。

5.3 提示(Prompts)

用于复用任务模板,例如:

  • 报告生成模板;
  • 代码分析模板;
  • 法律文档处理模板。

六、为什么 MCP 值得关注

因为它让“模型接工具”这件事开始具备更强的通用性和可移植性。对于智能体开发来说,这意味着未来很多工具接入不会再是一次次重复造轮子,而是逐渐变成更标准化的能力拼装。