Model Context Protocol (MCP)
概述
模型上下文协议(Model Context Protocol,MCP)是由 Anthropic 构建的开放协议,旨在标准化应用程序向大型语言模型(LLM)提供上下文的方式。2025 年 12 月 9 日,Anthropic 将 MCP 捐赠给智能体 AI 基金会(Agentic AI Foundation,AAIF),标志着智能体 AI 开放标准迈入重要里程碑。
基金会捐赠
历史背景
- 原始开发者:Anthropic
- 捐赠日期:2025 年 12 月 9 日
- 受赠方:智能体 AI 基金会(AAIF)
- 治理:现由 Linux Foundation 治理架构管理
战略意义
将 MCP 捐赠给 AAIF,体现了 Anthropic 对智能体 AI 生态系统开放标准与互操作性的承诺。此举确保 MCP 能够在社区治理下,作为厂商中立的标准持续演进。
技术架构
核心组件
MCP 通过三个核心组件,帮助在 LLM 之上构建智能体和复杂工作流:
1. 主机(LLM 应用)
- 定义:使用 LLM 并需要访问外部上下文的应用程序
- 示例:AI 助手、聊天机器人、智能体框架
- 职责:向 MCP 服务器发起连接,以访问外部资源
2. 服务器(上下文提供方)
- 定义:向外部资源提供统一接口的服务
- 职责:通过标准化的 MCP 协议暴露数据源和工具
- 示例:数据库连接器、API 封装层、文件系统接口
3. 客户端(协议实现)
- 定义:主机用于与服务器通信的协议实现
- 职责:管理连接、处理协议通信、路由请求
- 实现方式:内置于主机应用程序,或以库的形式提供
4. 本地数据源
- 示例:数据库、文件系统、配置文件
- 访问方式:由服务器在本地环境中直接访问
- 安全性:在适当权限与安全控制下进行直接访问
5. 远程服务
- 示例:REST API、GraphQL 端点、第三方服务
- 访问方式:服务器通过网络协议访问
- 集成方式:通过 MCP 服务器实现标准化集成
MCP 组件架构与数据流
协议规范
通信协议
- 传输层:基于多种传输机制的 JSON-RPC
- 序列化:所有数据交换均使用 JSON
- 版本管理:采用语义化版本号(Semantic Versioning)管理协议演进
- 扩展性:支持自定义能力的可扩展协议
标准操作
- 资源发现:枚举可用资源与能力
- 资源访问:对外部资源执行读写操作
- 工具调用:通过 MCP 服务器执行工具和函数
- 流式传输:支持流式数据与实时更新
安全模型
- 认证:可配置的认证机制
- 授权:细粒度访问控制与权限管理
- 加密:支持加密通信信道
- 沙箱隔离:对 MCP 服务器操作进行隔离
MCP 生态系统
MCP 服务器
社区仓库: - Awesome MCP Servers by Glamma.ai - AWS MCP Servers:面向云原生开发、基础设施管理和开发工作流的专用 MCP 服务器
专业平台: - PulseMCP:MCP 应用场景、服务器、客户端与动态资讯的综合资源平台
MCP 扩展与第三方工具
企业级解决方案: - Enterprise Governance Layer by Microsoft:面向 MCP 部署的企业级治理与合规解决方案 - MCPI:扩展 MCP,在 AI 与 Web 服务之间构建桥接
MCP 原生框架
智能体框架: - Fastagent:MCP 原生智能体框架,专为与 MCP 服务器无缝集成而设计
MCP 平台
托管解决方案: - KlavisAI:获得 YC 支持的 MCP 平台,提供托管 MCP 服务器和管理能力
与 A2A 协议的集成
互补协议
MCP 侧重: - 上下文提供:标准化应用程序向 LLM 提供上下文的方式 - 资源访问:统一访问外部数据源和工具 - 主机-服务器通信:LLM 应用程序与上下文提供方之间的通信
A2A 侧重: - 智能体互操作性:智能体之间的直接通信 - 工作流协调:多智能体工作流编排 - 服务发现:智能体能力发现与路由
集成模式
- 混合架构:使用 MCP 提供上下文,使用 A2A 进行智能体协调
- 协议桥接:在 MCP 与 A2A 协议之间建立桥接
- 统一平台:同时支持两种协议的平台
- 迁移策略:协议间的渐进式迁移
实施指南
快速开始
面向主机应用: 1. 选择 MCP 客户端库:为您的平台选择合适的客户端库 2. 配置服务器:建立与所需 MCP 服务器的连接 3. 实现上下文流:将 MCP 上下文集成到 LLM 工作流中 4. 处理错误:实现健壮的错误处理与回退机制
面向服务器开发: 1. 定义资源:明确通过 MCP 暴露的资源和工具 2. 实现协议:使用 MCP SDK 实现服务器协议 3. 安全配置:配置认证与授权 4. 测试:针对多种客户端实现进行充分测试
最佳实践
安全注意事项:
- 最小权限原则:仅授予必要的最小权限
- 输入验证:校验来自 MCP 客户端的所有输入
- 审计日志:记录所有 MCP 操作以供安全审计
- 网络安全:对敏感数据使用加密连接
- 进程级沙箱隔离:使用 Anthropic Sandbox Runtime(srt)封装 MCP 服务器进程,在操作系统层面(macOS Seatbelt / Linux bubblewrap)强制执行文件系统和网络限制,无需容器
性能优化: - 缓存:实施合适的缓存策略 - 连接池:对数据库服务器使用连接池 - 异步操作:采用异步操作提升性能 - 资源管理:妥善管理服务器资源与连接
可靠性模式: - 熔断器:为外部依赖实现熔断机制 - 重试逻辑:添加带指数退避的重试逻辑 - 健康检查:实现健康检查端点 - 优雅降级:优雅处理服务器故障
研究与发展
学术研究
白皮书与研究: - Model Context Protocol: Landscape, Security Threats, and Future Research Directions
研究方向: - 安全分析:全面的安全威胁建模与缓解 - 性能优化:面向高吞吐量场景的协议优化 - 互操作性:与其他智能体通信协议的集成 - 标准化:正式规范制定与标准化工作
未来方向
协议演进: - 增强安全性:高级安全特性与威胁缓解 - 性能提升:提升性能的协议优化 - 扩展能力:新协议特性与能力 - 生态增长:服务器与工具生态的持续扩展
行业采用: - 企业集成:企业级特性与合规支持 - 云平台支持:主流云平台的原生支持 - 开发工具:增强的开发工具与文档 - 社区增长:开发者与用户社区的持续壮大
相关章节
- 第 6.1 节:智能体 AI 基金会(治理与标准化)
- 第 6.3 节:Agent2Agent(A2A)协议(互补协议)
- 第 4 节:智能体开发框架(MCP 集成)
- 第 5 节:智能体技术栈(技术栈中的 MCP)
参见
-
Agent Client Protocol(ACP) —— 编辑器与智能体集成的互补标准,区别于 MCP 的工具/资源访问角色
-
Claude Code 编排原语——决策指南 — 阐述 MCP 如何与 Skills、子智能体、智能体团队及动态工作流协同配合
- 动态工作流(Claude Code)
- 智能体技能 / SKILLS.md 标准
- 多智能体系统
- Kestra — 声明式智能体编排平台 —— 内建 MCP 服务器、并为 AI Agent 任务提供 MCP 客户端支持的编排平台


