深度解读。一句话MCP 协议发布以来最大手术——Session 和初始化握手被移除Server 不再需要 Session Affinity、分布式 Session Store 等额外基础设施。这个变更在 2026 年 5 月 21 日冻结 RC7 月 28 日发布正式规范。§1 开篇钩子2026 年 7 月 28 日MCP 协议将迎来它发布以来最大的一次变更。但和大多数协议更新不同——这次不是加功能而是大量删东西。Session 没了。初始化握手取消了。三个核心特性被标记为废弃。如果你在过去一年里搭建过远程 MCP Server那套基于Mcp-Session-Id的会话亲和性、外部分布式 Session Store、以及为 Capability Negotiation 做的路由逻辑——全都不需要了。这篇文章来自 The New Stack作者 Janakiram MSV 以架构师视角解读了这次 RC 重写的设计逻辑。简单说MCP 之前给自己创造了一个分布式系统难题然后让所有 Server 开发者买单。这次重写就是还债。§2 MCP 协议是什么为什么它值得关注Model Context ProtocolMCP是 Anthropic 在 2024 年底推出的一套开放协议目标是给 AI 模型特别是 Agent和外部工具、数据源之间定一个标准化的通信方式。类比一下如果说 HTTP 是浏览器和服务器之间的协议那 MCP 就是 AI Agent 和工具之间的协议。Claude Code、Cursor、各种 AI IDE 和 Agent 框架都在用 MCP 来连接代码仓库、数据库、API 网关这些外部系统。MCP 的核心设计是 Client-Server 架构MCP ClientAI 模型或 Agent 框架MCP Server对外暴露工具、资源、提示词传输层本地用 stdio远程用 SSEServer-Sent Events协议在 2024 年底推出后迅速成了 AI Agent 工具集成的实际标准。但也正因为推得快一些设计上的取舍在远程部署场景下暴露出了问题。§3 RC 重写到底改了啥这次 RC 重写涉及 6 个规范增强提案核心变更可以归纳为3 删 2 加 1 保底。3 删Session、握手、Capability 协商Session 被移除是这次变更中最有冲击力的一条。之前的 MCP Server 在建立连接时会生成一个Mcp-Session-Id客户端后续请求都带上它。这在桌面端场景没问题——一个进程对应一个长期连接。但到了远程场景问题就来了一个 Server 需要 Session Affinity粘性会话把同一个 Session 的请求固定到同一台实例上。或者搞一套外部分布式 Session Store。或者让网关解析 JSON Body 来做路由。一句话协议给自己创造了一个分布式系统难题然后让所有 Server 开发者买单。初始化握手被移除。之前连接建立时 Client 和 Server 要互相交换 Capability 信息。现在这些信息被移到_meta字段里每个请求都带上协议版本和客户端能力。Capability 协商被简化。之前 Capability 只在连接时协商一次不同连接拿到的结果可能不一样缓存和中间件很难推理。现在 Server 通过server/discover方法独立暴露能力可以按需查询。2 加Handle 模式和 TTL 缓存Handle 模式是 Session 移除后的替代方案。逻辑很简单如果一个工具需要记住状态就自己返回一个 Handle比如basket_id模型在后续调用中把 Handle 当作参数传回来。这个模式的精妙之处在于Handle 对模型是可见的。之前藏在传输元数据里的 Session 状态模型完全没法感知和推理。现在 Handle 出现在 Tool Result 中模型可以跨工具组合、在工作流步骤之间传递。TTL 缓存机制被引入。List 和 Read 操作的结果现在必须包含ttlMs和cacheScope字段类似 HTTP 的 Cache-Control。客户端可以在指定时间内缓存目录结果不用每次都重新拉取。Server 还被要求按确定顺序返回工具列表——这有助于提升 Prompt 缓存的命中率在那些按缓存 Token 定价的提供商那里直接省成本。1 保底特性生命周期政策每个 MCP 特性现在都有明确的 Active → Deprecated → Removed 三阶段生命周期最短 12 个月的废弃窗口安全风险除外可缩短到 90 天。还有一个公开注册表列出哪些特性正在退出以及退出时间。对于需要向平台审批委员会证明 MCP 集成可靠性的团队来说一纸书面弃用保证比任何新功能都有价值。§4 对开发者的实际影响Server 作者你的远程 MCP Server 现在可以像普通无状态 HTTP 服务一样运营了。三个副本跑在 Round-Robin 后面不需要 Session Affinity 配置不需要跑 Session Store 也不需要做故障恢复。滚动部署不会再让 Session 失效或者把客户端挂在已下线的实例上——虽然还在处理中的请求和订阅流还是会中断但客户端只需要在新请求 ID 下发起重试。对于平台团队新的Mcp-Method和Mcp-Name头意味着网关可以按操作类型做限流和鉴权不需要解析请求 Body。当然这只有在传输层校验开启时才成立——Backend 会拒绝任何 Header 和 Body 不一致的请求。使用 Tasks API 的开发者Tasks 在 2025 年 11 月作为实验性核心特性发布实际生产使用暴露了设计问题。现在它被重构为扩展移出核心规范。这是一个破坏性规范变更但下一个迭代不再是了——因为扩展通过 Capability Flag 或设置级版本演进只在不得不破坏时才换标识符。使用 Sampling 和 Logging 的 Server废弃的特性需要迁移路径。Sampling 是最尖锐的例子——之前 Server 通过 Client 做模型采样不需要 Provider 凭据也不承担账单。现在直接调用 Provider APIServer 成了凭据持有者、账单承担者和独立的数据处理器。Logging 也是。之前通过 stderr 给远程 Client 发结构化日志流现在 Operator 观察性交给 OpenTelemetry。§5 影响与展望从框架到标准MCP 这次 RC 重写传递了一个清晰的信号它在从一个框架变成一个标准。框架可以加功能标准必须做减法——移除不必要的抽象层让协议更贴合已有的基础设施。扩展机制是一个佐证。扩展现在有命名空间 ID官方用io.modelcontextprotocol第三方用反域名有自己的仓库和发布节奏。写过 Kubernetes CRD 的人会立刻认出这个模式——能力在核心发布周期之外独立演进。无状态化不是万能药需要指出一点协议层的无状态买的是可路由性不是确定性。两个副本接受同一个请求不需要查询协议状态——但如果它们跑着不同版本或者读取了不同的下游数据返回的结果还是不一样。迁移窗口维护者给了 10 周的验证窗口以及 Python、TypeScript、Go、C# 四个语言的 Beta SDK。迁移路径设计得很务实Client 先用server/discover探测遇到仅支持旧协议的 Server 时回退到initialize。这是一个线缆级的破坏性变更但用协商路径跨了过去不是生态层面的 Flag Day。写在最后MCP 在不到两年的生命周期里移除了一个基础抽象这是一个有风险的决定。但维护者用 10 周验证窗口、多语言 Beta SDK、和协商迁移路径把风险控制得很理智。对于正在做 MCP 集成的团队RC 窗口期正是盘点 Session 依赖、开始测试的好时机。等正式规范和稳定 SDK 发布后再安排生产上线。从 Server 作者到平台团队再到围绕 MCP 构建网关和注册表的厂商——这次更新的回报是一个更自然地适配行业已有基础设施的协议层。参考来源MCP’s biggest update removes the machinery many servers were built around - The New Stack | Janakiram MSV, Jul 26, 2026