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