协议修订: 2025-03-26
- 基础协议:核心 JSON-RPC 消息类型
- 生命周期管理:连接初始化、能力协商和会话控制
- 服务器功能:服务器提供的资源、提示词和工具
- 客户端功能:客户端提供的采样和根目录列表
- 工具类功能:日志记录、参数补全等通用功能
消息
MCP 客户端和服务器之间的所有消息 必须 遵循 JSON-RPC 2.0 规范。协议定义了以下类型的消息:请求
请求由客户端发送至服务器,或由服务器发送至客户端,用于启动某个操作。- 请求 必须 包含字符串或整数类型的 ID。
- 与基础 JSON-RPC 不同,ID 不得 为
null。 - 请求方在同一个会话中 不得 重复使用已经使用过的 ID。
响应
响应用于回复请求,包含操作的结果或错误信息。- 响应 必须 包含与所对应请求相同的 ID。
- 响应进一步细分为 成功结果 或 错误。必须设置
result或error之一,不得 同时设置两者。 - 结果可以遵循任何 JSON 对象结构,而错误至少 必须 包含错误代码和消息。
- 错误代码 必须 为整数。
通知
通知由客户端发送至服务器,或由服务器发送至客户端,作为单向消息。接收方 不得 发送响应。- 通知 不得 包含 ID。