为什么新版MCP协议把会话删了,部署反而要操心更多事?亚马逊云科技介绍了最新版模型上下文协议(MCP)规范如何改变远程MCP服务器的部署方式。新规范移除了协议层会话,允许请求到达任意可用的服务器实例。
这项变更消除了协议对粘性会话和共享会话存储的要求。水平扩展因此被简化,但状态管理及其他职责被转移给了周边基础设施。
![]()
握手流程和会话标头一起消失
更新后的MCP规范移除了initialize和initialized握手流程,以及Mcp-Session-Id标头。传统负载均衡器由此可以将每个请求独立路由到任意服务器实例。
规范还引入了可选的server/discover操作,供需要在调用工具之前了解服务器能力的客户端使用。
对于亚马逊云科技上的部署而言,这可以消除专门用于维护MCP协议会话的基础设施。AWS Architecture Blog作者Anand Komandooru、Steven DeVries和Haleh Najafzadeh介绍了如何用传统请求路由取代具有会话亲和性的路由,并移除仅用于保存MCP协议状态的会话存储。
他们还将AWS Lambda列为一种适合请求—响应模型的部署选项,因为该协议不再要求持久化会话连接。
协议状态和应用状态,是两回事
协议状态与应用状态之间的区别也成为社区讨论的焦点。Michael Madsen在LinkedIn上谈及该规范时,将这项变化总结为:MRTR取代了此前需要保持流连接的服务器发起型请求,允许通过input_required响应及后续请求完成多步骤交互。
新的Mcp-Method和Mcp-Name标头支持网关路由和限流,W3C Trace Context则支持分布式追踪。ttlMs和cacheScope提供缓存控制能力。
亚马逊云科技将这些变更映射至其面向智能体AI的Well-Architected指南,涵盖监控、追踪、安全和工具集成。流恢复能力也已被移除,因此客户端可能需要重试被中断的操作。对于会产生副作用的工具调用,这进一步凸显了幂等性的重要性。
旧客户端还在,迁移不能一刀切
早期实现工作表明,现有基础设施仍然需要一条过渡路径。Apify的MCP服务器项目正在现有的有会话服务器之外实现无状态支持,并通过路由和一致性测试覆盖两个协议版本。
因此,对于仍需支持旧版MCP客户端的部署,迁移仍然十分重要。亚马逊云科技建议在网关处追踪协议版本,并在旧版流量完全消失之前保留会话基础设施。MCP项目还制定了一项功能生命周期策略,为弃用功能提供明确的迁移期。
协议层不再管状态,不等于状态不存在。它只是从协议里被挪到了应用和周边基础设施身上——谁接住,谁就得自己扛。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.