AI导航

MCP协议的架构设计是怎样的?

AI百科
3 min read
58 次阅读

MCP协议的架构设计全解:从核心组件到安全机制

一、总体架构概览MCP(Model Context Protocol)遵循 “客户端-主机-服务器” 三层架构:

  • Host(主机):充当容器与协调器,创建/管理多个 Client,负责安全策略与用户授权。
  • Client(客户端):与单个 Server 建立 1:1 有状态会话,完成能力协商、双向消息转发与上下文维护。
  • Server(服务器):暴露特定资源或工具,专注单一能力,实现最小化职责与安全隔离。

二、消息层:JSON-RPC 2.0 与状态会话MCP 统一采用 JSON-RPC 2.0 作为消息格式(请求 / 响应 / 通知三类),并通过 session 保持跨多步任务的上下文,实现链式调用与变量追踪。

三、传输层:可插拔通信通道

  1. Stdio(标准输入/输出)——本地 CLI 与桌面插件首选,延迟极低。
  2. Streamable HTTP——“单端点 POST + 可选 SSE 流” 的远程方案,支持断点续连与多客户端并发。
  3. 传统 SSE 双端点——兼容旧生态,依旧常见于生产环境。
  4. 自定义扩展——协议允许 WebSocket、Unix Socket、ZeroMQ 等任意双向通道,只需封装 JSON-RPC 消息。

四、能力协商与扩展机制建立连接时,Client 与 Server 显式声明 capability 列表(如订阅通知、工具调用、采样支持等)。功能按需启用,保证前向兼容与渐进式扩展。

五、安全设计要点

  • 最小权限原则:主机层面对每个工具设定 Scope,避免越权。
  • 多重隔离:Server 彼此不可见,完整会话仅掌握在 Host,防止数据泄露。
  • 审计与日志:所有调用链路可追溯,便于检测提示注入、令牌窃取等攻击。

六、设计原则与实践价值

  1. 易构建:Server 只关注自身功能,复杂编排交由 Host 完成。
  2. 可组合:多个 Server 可任意拼装,快速聚合能力。
  3. 逐步演进:核心协议精简,功能通过 capability 渐进扩展,保持长期稳定。

七、部署拓扑示例

  • 本地开发:IDE 插件 (Client) ←→ 调试 Server (Stdio)
  • 云端服务:浏览器 Agent (Client) ←HTTP→ 工具网关 (Server)
  • 操作系统级:Windows AI Foundry (Host) 统一暴露文件系统、日历等 Server,任何 LLM Agent 均可即插即用。

八、总结通过“客户端-主机-服务器”解耦、JSON-RPC 消息层与可插拔传输,MCP 将 AI 与外部工具的集成从碎片化接线升级为 标准化、可扩展、安全可控 的体系,为构建企业级与个人级智能体奠定基础。

推荐工具

NVIDIA Chat with RTX AI聊天 Chat with RTX 是 NVIDIA 面向 RTX 电脑的本地 AI 聊天工具,可围绕本地文档和视频资料做问答,适合重视隐私、离线检索并具备硬件条件的用户更适合资料不便上传云 文心一言 AI聊天 文心一言 是百度文心大模型 AI 助手,支持百度 AI 聊天、文案创作和图像理解,适合中文用户和内容创作者完成 AI 对话、资料问答和任务协作,适合上线前核对权限、成本和资料质量。 HuggingChat AI聊天 HuggingChat 是 Hugging Face 的开源模型聊天应用,支持 Omni 自动选模型,也可手动选社区开放模型对话。它适合体验开源模型、技术探索和问答,结果可能不稳定,重要内容需复核。 纳米AI搜索 AI搜索 纳米AI 是 360 旗下 AI 搜索和智能体入口,支持文字、语音、拍照提问、多模型协作与内容创作,适合中文用户做日常搜索、学习问答、移动查询、热点追踪、生活决策、知识整理和轻量创作。 Meta AI AI聊天 Meta AI 是 Meta 的个人 AI 助手,可在网页、应用、AI 眼镜及 WhatsApp、Instagram 中使用,支持问答、图像理解和语音交流,适合社交与生活场景,部分功能受地区限制。 Pi AI AI聊天 Pi AI 是 Inflection AI 推出的个人 AI 助手,强调情绪理解、陪伴式交流、生产力建议和安全对话,可在 pi.ai 与移动端使用。它适合日常思考、学习陪练和规划,不替代专业心理支持。