消息

ℹ️
协议修订版: 2024-11-05

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。