消息

ℹ️
协议版本:草案

MCP 中的所有消息必须遵循 JSON-RPC 2.0 规范。该协议定义了三种类型的消息:

请求

请求从客户端发送到服务器,或从服务器发送到客户端。

{
  jsonrpc: "2.0";
  id: string | number;
  method: string;
  params?: {
    [key: string]: unknown;
  };
}
  • 请求必须包含字符串或整数 ID。
  • 与基础 JSON-RPC 不同,ID不得null
  • 请求 ID 在同一会话中不得被请求者先前使用过。

响应

响应作为对请求的回复发送。

{
  jsonrpc: "2.0";
  id: string | number;
  result?: {
    [key: string]: unknown;
  }
  error?: {
    code: number;
    message: string;
    data?: unknown;
  }
}
  • 响应必须包含与其对应的请求相同的 ID。
  • 必须设置 resulterror。响应不得同时设置两者。
  • 错误代码必须是整数。

通知

通知从客户端发送到服务器,或从服务器发送到客户端。接收者不得发送响应。

{
  jsonrpc: "2.0";
  method: string;
  params?: {
    [key: string]: unknown;
  };
}
  • 通知不得包含 ID。