编者按:一篇关于 MCP 作为 AI 应用标准交互层的概念综述。文章从模型能力如何依赖可获取的上下文出发引出该协议:从需要手动粘贴背景信息的聊天机器人,发展到直接连接数据源和工具的模型。随后按控制方梳理了 MCP 的三个核心接口:由用户触发的提示词(prompts)、由模型决定调用的工具(tools)、由应用管理的资源(resources),并类比 API 标准化了 Web 前后端、语言服务器协议(LSP)标准化了 IDE 与语言工具之间的通信。结尾谈到了 MCP 所解决的碎片化问题,以及远程服务器和注册中心等路线图项目——编辑注确认其中部分已经落地。核心要点:区分控制方(由谁决定每个原语何时触发),是向新人解释 MCP 架构最快的方式。阅读时值得放在手边的官方页面:MCP 规范、MCP 参考服务器。
1. MCP 的动机与背景
核心理念:模型的能力很大程度上取决于它接收到的上下文信息。

演进路径:从需要手动输入全部上下文的早期聊天机器人,发展到能够直接连接数据源和工具的模型,从而实现更强大、更个性化的 AI 应用。
MCP 的目标:作为一个开放协议,实现 AI 应用、智能体(Agent)与各种工具和数据源之间的无缝集成。
图 1:AI 上下文能力演进示意图
2. MCP 的类比与组成
类比 API:就像 API 标准化了 Web 应用前端与后端之间的交互。
类比 LSP(语言服务器协议):就像 LSP 标准化了 IDE 与编程语言工具之间的交互。
MCP 定义了 AI 应用与外部能力交互的标准方式,主要包含三个核心接口。
图 2:MCP 与三大核心接口类比
接口 1:Prompts(提示词)
控制方:“用户” 👤
预定义的模板,由用户手动触发,用于常见、可预期的交互模式。
例如:文档问答模板、代码摘要模板。
接口 2:Tools(工具)
控制方:“模型” 🧠
模型(LLM)可以按需自主决定何时调用这些工具来完成任务。
例如:检索数据、发送邮件、更新数据库。
接口 3:Resources(资源)
控制方:“应用” 🖼️
由应用控制的数据源。应用可以灵活决定何时以及如何使用这些数据。
例如:图片、文本文件、JSON 数据、实时数据流。
3. MCP 解决的问题:碎片化
现状痛点:不同团队和应用以不同方式构建 AI 系统,导致严重的碎片化和重复开发。
MCP 的愿景:标准化 AI 开发流程。应用开发者只需兼容 MCP,就能零成本接入任何支持 MCP 的服务器。
- MCP 服务器(服务端):封装各种系统和工具(数据库、CRM、API、版本控制等),为 LLM 提供标准的访问接口。
- MCP 客户端(客户端侧):需要上下文和工具能力的 AI 应用(如 Cursor、Windsurf、Goose 等)。
图 3:MCP 如何解决集成碎片化问题
4. MCP 的核心价值
- 应用开发者 👨💻:一次兼容,处处连接。应用无需定制开发即可无缝访问任何 MCP 服务器。
- 工具/API 提供商 🛠️:一次构建 MCP 服务器,即可被众多 AI 应用集成使用。
- 最终用户 😊:获得更强大、更懂上下文的 AI 应用体验。
- 企业 🏢:明晰团队职责(例如基础设施团队维护服务器,应用团队专注应用),加速 AI 落地。
图 4:MCP 为生态带来的价值
5. MCP 的采用情况
它已在多个领域获得关注和采用:
- AI 应用/IDE:Github、文档站点等。
- MCP 服务器:社区目前维护着数以万计的服务器——本综述写作时数量刚过一千——Cloudflare、Stripe 等公司也提供了官方集成。
- 开源社区:活跃贡献。
图 5:MCP 生态采用情况概览
6. 构建 MCP 应用
MCP 客户端(客户端侧):
- 调用
Tool执行操作。 - 查询
Resource获取数据。 - 填写
Prompt模板与用户交互。
MCP 服务器(服务端):
- 对外暴露
Tool、Resource和Prompt供客户端使用。
7. 详解 Tool、Resource、Prompt
图 7:MCP 三大接口详解
Tool(模型控制)
- 由 LLM 自主决定何时调用。
- 用途:检索/发送数据、更新数据库、写文件、执行代码等。
Resource(应用控制)
- 由应用决定如何使用。
- 内容:图片、文本、JSON、结构化数据等。
- 支持静态和动态资源。
- 支持资源变更通知(服务器可以主动通知客户端更新)。
Prompt(用户控制)
- 由用户手动选择并触发。
- 用途:定义常用交互模板,简化用户操作。
8. MCP 与智能体(Agent)的关系
MCP 是智能体的基础协议。
增强型 LLM(Augmented LLM):指 LLM 与检索系统、工具、记忆等外部组件的组合。MCP 为 LLM 与这些组件的交互提供了标准化的方式。
智能体核心循环:智能体本质上就是一个运行在循环中的增强型 LLM,持续执行任务、调用工具(通过 MCP)、分析结果并规划下一步。
MCP 的作用:赋予智能体可扩展性,使其能够在运行时动态发现并使用新能力(通过连接不同的 MCP 服务器)。
图 8:MCP 在智能体运行循环中的作用
9. mcp - agent 框架(由 LastMile AI 出品)
展示了如何使用 MCP 构建智能体系统。
- 提供一组用于构建智能体的组件(Agent、Task)。
- 简化智能体的构建流程,让开发者专注于智能体的核心逻辑。
- 以声明式方式定义智能体任务以及可用的 MCP 服务器和工具。
图 9:mcp - agent 框架简化智能体开发
10. 智能体协议能力
Sampling(采样,推理请求)
MCP 服务器可以请求客户端(应用)执行 LLM 推理调用,服务器自身无需集成 LLM。
可组合性
任何应用或 API 都可以同时充当 MCP 客户端和 MCP 服务器,实现能力的嵌套与组合。
11. MCP 路线图
- 远程服务器与认证:支持 OAuth 2.0 认证,由服务器负责处理认证流程。实现远程托管的服务器,用户无需手动安装和配置。通过会话令牌(Session Token)实现客户端与服务器之间的安全交互。
- 注册中心:统一的托管元数据服务,用于发现和管理 MCP 服务器,解决服务器的发现与发布问题,并支持版本控制、认证、安全校验等功能。
- 开发者体验与生态:着力改善开发者体验,完善文档。
图 11:MCP 未来发展路线图