专题突破 · 标准化协议

Anthropic MCP 协议与动态 Skills 深度实战

为什么说 MCP 是 AI 智能体生态的“Type-C 统一接口”?本章彻底拆解 Model Context Protocol 规范、JSON-RPC 2.0 通信底座与渐进式技能加载架构。

协议版本提示

下方报文模拟固定使用旧版 2024-11-05,展示概念而非完整抓包:旧版初始化成功后还需发送 initialized 通知。2026-07-28 版本采用无状态请求,移除了 initialize / initialized 握手及协议级会话;能力信息随请求传递,可通过 server/discover 查询服务端能力。按实际使用版本核对传输、认证与 SDK,不要直接混用报文。

1
行业变革:为什么需要 MCP (Model Context Protocol)?

在过去的 AI 应用开发中,开发者如果想让 Agent 访问本地 SQLite、读取 GitHub PR、或者操作 Slack,必须为每一个服务编写专有的集成代码:

MCP 诞生前:N × M 混乱网状依赖

每个 Agent 框架(LangChain、LlamaIndex、自研 Harness)都需要为每个外部数据源单独编写适配插件。代码碎片化严重,无法跨工具复用。

MCP 时代:N + M 标准化即插即用

第三方数据源只需编写一个标准的 MCP Server;任何支持 MCP 协议的 Harness / Host 都可以直接调用它,犹如插上 USB 闪存盘一样轻松。

2
MCP 三层通信架构与三大核心原语
Host (宿主应用)

Agent Harness / IDE

调度中心。负责初始化 MCP 客户端连接,协调大模型推理循环与安全策略。

MCP Client

协议转换桥接器

与具体 MCP Server 建立连接,协商能力并处理协议消息;工具输入与授权仍需在执行端验证。

MCP Server

能力与资源提供方

轻量服务端程序,通过标准通信暴露自身的数据、Prompt 模板与可执行工具。

MCP 三大核心原语 (Primitives)

3
交互式实战:MCP JSON-RPC 2.0 协议抓包调试台

选择一个标准的 MCP 请求类型,点击“发送 JSON-RPC 报文”,观察旧版协议部分 JSON-RPC 报文的模拟;未展示完整生命周期:

🔌 旧版 MCP JSON-RPC 报文模拟器
➔ Request (Client ➔ Server)
// 点击右上角按钮发送请求...
⬅ Response (Server ➔ Client)
// 等待响应数据包...
4
Skills 架构与渐进式上下文披露 (Progressive Disclosure)

在大规模企业系统中,工具与专业操作指南多达上百项。如果一次性把所有工具的详细说明和提示词全都灌给模型:

💡 渐进式披露三步法 (The 3-Step Pattern)
  1. 阶段一:轻量目录注册:System Prompt 仅包含技能名与一句话简介(每个仅占用约 15 Tokens)。
  2. 阶段二:动态按需加载:当模型识别到当前任务匹配某 Skill 时,调用 lookup_skills({ name: "sql-expert" }) 动态获取详细指引。
  3. 阶段三:精准执行与释放:任务完成后从临时工作上下文中归档,减少后续上下文负担;实际缓存命中仍需测量。
5
本章知识通关自测
1. [单选] Anthropic MCP (Model Context Protocol) 规范默认使用的底层通信协议报文格式是什么?
上一章 ← 7. 80行手写 Minimal Harness 下一章 9. Chrome 扩展版 AI Agent 实战 →