MCP(Model Context Protocol)

⚠️ 2026-10-02 核实:协议已两次重大变化,笔记原内容严重不足

  • 当前规范版本:2026-07-28 —— 这是 MCP 诞生以来最大的一次改版(无状态化)
  • 2025-12-09 已移交 Linux Foundation 下的 Agentic AI Foundation(AAIF),不再是 Anthropic 独家

一句话

Anthropic 于 2024 年 11 月开源的「模型上下文协议」,为 AI 应用连接外部数据源与工具提供统一标准。现已由 Linux Foundation 托管,成为业界通用标准。

基本信息

  • 类型:开放协议 / 技术标准
  • 提出方:Anthropic(2024-11)
  • 治理:Agentic AI Foundation(AAIF),挂靠 Linux Foundation
    • 创始项目还包括 Block 的 goose 与 OpenAI 的 AGENTS.md
    • 共同发起方:Anthropic + Block + OpenAI
  • 仓库:modelcontextprotocol/modelcontextprotocol(规范)、modelcontextprotocol/servers
  • 用途:让 Claude、Cursor 等 AI 应用通过统一接口连接数据库、API、文件系统等外部资源
  • 未被取代:反而成为同时代 A2A 等协议的整合方向

生态规模(2025-12 捐赠时官方口径)

指标数值
月 SDK 下载9700 万+
活跃 server1 万+ 个
一线平台原生支持ChatGPT、Claude、Cursor、Gemini、Copilot、VS Code

融合趋势:有官方 Registry(server 目录中心)和「Skills over MCP」工作组。

⚠️ 2026-07-28 改版:协议无状态化(破坏性最大)

如果笔记或代码里写过「会话保持」「initialize 握手」,这些都是旧版语义。

核心破坏性变更

变更说明
取消协议级会话移除 Mcp-Session-Id 头;tools/list 等不再按连接区分
取消 initialize 握手改为无状态。每个请求在 _meta 里带协议版本与客户端能力
新增 server/discover服务端必须实现,用于声明支持的协议版本与能力
MRTR 多轮往返模式取代原先服务端主动发请求的方式;返回 resultType: "input_required"
必填 resultType所有结果都要带;旧服务端省略时按 complete 处理
移除 SSE 断点续传响应流断了要重新发起请求

正式弃用的功能

功能建议替代
Roots用工具参数、资源 URI 或服务端配置传目录/文件
Sampling直接集成 LLM provider API
Logging写 stderr(stdio)或用 OpenTelemetry
HTTP+SSE 传输改用 Streamable HTTP
OAuth 动态客户端注册(RFC7591)改用 Client ID Metadata Documents

tasks 从核心挪进官方扩展(io.modelcontextprotocol/tasks)。

仍可用的部分

  • Streamable HTTP 传输仍是推荐方式
  • tools/list 等基础 RPC 不变
  • 新增 extensions 字段支持核心协议外的扩展
  • tools/list 结果需带 ttlMs / cacheScope 便于客户端缓存

⚠️ 版本号提醒:官网 /specification/versioning 页面仍显示 current = 2025-11-25(该页疑似未同步),但 2025-11-25 页面顶部横幅和 /specification/latest 均指向 2026-07-28。以 2026-07-28 为准。

本仓使用

已接入多个 MCP:Huixiong、Yuntu(数据库查询)、电脑控制、秘塔搜索 等。

⚠️ 提醒:本仓的 MCP 配置目前基于旧版协议。若将来升级服务端或客户端,需按 2026-07-28 的无状态化改造——特别是自定义 MCP server 的实现。

相关笔记

相关日记

  • 2026-09-17 - 通过 MCP(Huixiong)连上 云图数据 新库 huixiong
  • 2026-10-02 - 核实:补协议版本 2026-07-28 无状态化改版、AAIF 托管、生态规模、弃用清单