跳到正文
原文
Zenodo·本站收录 · 原文发表

审计发现 MCP 三个官方 SDK 对 requestState 的默认完整性保护不一致

MCP requestState:官方SDK默认完整性保护的差异

AI 导读

一份源码级审计发现,MCP 2026-07-28 修订引入的多轮往返请求(MRTR,SEP-2322)要求服务器对 requestState 做完整性保护并拒绝校验失败的状态,但三个官方参考 SDK 的默认行为并不一致。Python SDK 默认对 requestState 做认证加密,并绑定主体、受众和有效期;Go 和 TypeScript SDK 默认不做完整性保护,Go 未提供内置机制,TypeScript 提供了机制但需显式配置才启用。v2 新增的生态响应部分记录 Python SDK 随后反转了自身的明文默认值,改为默认以认证加密封装 requestState(PR #3032,2026-06-30 合并),其描述以维护者自己的措辞确认了此前的明文行为。作者直接读取三个使用 MRTR 做破坏性或敏感确认的活跃 MCP 服务器,发现三者都收敛到安全模式。

阅读原文zenodo.org