MCP:AI 应用的标准化交互协议
发布时间 : 2025-05-06
浏览量 : 4.4K

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 (服务器端):

  • 暴露 ToolResourcePrompt 供 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 未来发展路线图

AIbase
智启未来,您的人工智能解决方案智库
简体中文