Skip to content
MCP 文档版本 2026-07-28 更新于 2026-10-14

版本管理

Model Context Protocol 使用基于字符串的版本标识符,格式为 YYYY-MM-DD,用于表示最后一次做出向后不兼容变更的日期。

INFO

只要变更保持向后兼容,协议更新时协议版本不会递增。这样可以在保持互操作性的同时进行增量改进。

修订版

修订版可能被标记为:

  • Draft:进行中的规范,尚不可供使用。
  • Current:当前协议版本,已可供使用,并可能继续接收向后兼容的变更。
  • Final:过去的、完整的规范,将不再变更。

当前协议版本为 2026-07-28。

功能状态

规范中的单个功能还可能根据 功能生命周期与弃用政策被标记为 Deprecated:该功能仍是规范的一部分,但已被安排移除。 已弃用的功能会记录迁移路径(或说明无需迁移), 并在其具备移除资格之前至少在规范中保留十二个月,或在政策的 加速移除例外下至少保留 九十天,之后它们可能在未来的修订版中被 Removed。

当前已弃用的功能列在 已弃用功能注册表中。

协商

每个请求都通过其 _meta 字段中的 io.modelcontextprotocol/protocolVersion 键声明所使用的协议版本,服务端会 独立地接受或拒绝每个请求。在 Streamable HTTP 上,相同的值也携带在 MCP-Protocol-Version 头中。 客户端与服务端 MAY(可以)同时支持多个协议版本。

如果服务端不支持所请求的版本,它会响应一个 UnsupportedProtocolVersionError, 列出其确实支持的版本。客户端随后可以用双方都支持的版本重试该请求,或者如果不存在这样的版本,则向用户呈现错误。

希望预先选择版本的客户端可以调用 server/discover,这是一个强制性的 RPC, 在单个请求中返回服务端支持的协议版本、能力与身份。调用它是可选的:客户端可以自由地直接发送任何请求, 并在收到版本错误时进行处理。

关于与实现基于握手的协议修订版(2025-11-25 及更早版本)的服务端和客户端的互操作性,请参见 向后兼容性。

BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。