MCP新规范移除Session ID,无状态化破坏跨调用观测

Thirumalaiboobathi · reddit · 2026-08-10

MCP(Model Context Protocol)最新规范移除了 Mcp-Session-Id 请求头和初始化握手,使服务端可以像普通 HTTP 负载一样在 Serverless 环境运行。但这一无状态化改动破坏了跨调用的可观测性。

opentel-mcp 的维护者分享了踩坑经验:由于内存中的追踪器会在每次请求后被重置,导致需要统计多次调用的“重试循环检测”功能失效。更棘手的是,失去 Session ID 后,系统无法区分“三个不同客户端各失败一次”和“同一客户端失败三次”。

作者在 v0.10.0 版本中,通过基于失败指纹的关联分析替代了进程内计数来解决此问题。同时提醒开发者,如果代码中通过判断 transport 对象是否包含 sessionId 字段来检测单连接,未来可能会因 SDK 升级而产生误报。

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →