logo

MCP架构

MCP 协议遵循客户端-主机-服务器架构,其中每个主机可以运行多个客户端实例。该架构使用户能够跨应用程序集成 AI 能力,同时保持清晰的安全边界并隔离问题。MCP 基于 JSON-RPC 构建,提供了一个有状态会话协议,专注于客户端和服务器之间的上下文交换和采样协调。

MCP 协议架构

MCP 遵循客户端-服务器架构,MCP 协议架构如下图所示:

graph LR subgraph "应用程序主机进程" H[主机] C1[客户端 1] C2[客户端 2] C3[客户端 3] H --> C1 H --> C2 H --> C3 end subgraph "本地机器" S1[服务器 1<br>文件 & Git] S2[服务器 2<br>数据库] R1[("本地<br>资源 A")] R2[("本地<br>资源 B")] C1 --> S1 C2 --> S2 S1 <--> R1 S2 <--> R2 end subgraph "互联网" S3[服务器 3<br>外部 API] R3[("远程<br>资源 C")] C3 --> S3 S3 <--> R3 end

这里主要涉及到三个角色:主机服务器客户端

  • 主机是发起连接的 LLM 应用程序(如 Claude Desktop 或 Cursor IDE)
  • 客户端在主机应用程序内部与服务器保持 1:1 连接
  • 服务器向客户端提供上下文、工具和提示