> ## Documentation Index
> Fetch the complete documentation index at: https://mcp.920929.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# 概述

<Info>**协议版本**: 2025-03-26</Info>

模型上下文协议由几个协同工作的关键组件组成：

* **基础协议**：核心JSON-RPC消息类型
* **生命周期管理**：连接初始化、能力协商和会话控制
* **服务器功能**：服务器公开的资源、提示和工具
* **客户端功能**：客户端提供的采样和根目录列表
* **工具**：跨领域关注点，如日志记录和参数完成

所有实现**必须**支持基础协议和生命周期管理组件。其他组件**可以**根据应用程序的特定需求来实现。

这些协议层建立了明确的关注点分离，同时实现了客户端和服务器之间的丰富交互。模块化设计允许实现精确支持所需的功能。

## 消息

MCP客户端和服务器之间的所有消息**必须**遵循[JSON-RPC 2.0](https://www.jsonrpc.org/specification)规范。协议定义了以下类型的消息：

### 请求

请求从客户端发送到服务器或相反，以启动操作。

```typescript theme={null}
{
  jsonrpc: "2.0";
  id: string | number;
  method: string;
  params?: {
    [key: string]: unknown;
  };
}
```

* 请求**必须**包含字符串或整数ID。
* 与基本JSON-RPC不同，ID**不得**为`null`。
* 请求ID在同一会话中**不得**被请求者先前使用过。

### 响应

响应作为对请求的回复发送，包含操作的结果或错误。

```typescript theme={null}
{
  jsonrpc: "2.0";
  id: string | number;
  result?: {
    [key: string]: unknown;
  }
  error?: {
    code: number;
    message: string;
    data?: unknown;
  }
}
```

* 响应**必须**包含与其对应请求相同的ID。
* **响应**进一步分为**成功结果**或**错误**。必须设置`result`或`error`之一。响应**不得**同时设置两者。
* 结果**可以**遵循任何JSON对象结构，而错误**必须**至少包含错误代码和消息。
* 错误代码**必须**是整数。

### 通知

通知从客户端发送到服务器或相反，作为单向消息。接收者**不得**发送响应。

```typescript theme={null}
{
  jsonrpc: "2.0";
  method: string;
  params?: {
    [key: string]: unknown;
  };
}
```

* 通知**不得**包含ID。

### 批处理

JSON-RPC还定义了[批量处理多个请求和通知](https://www.jsonrpc.org/specification#batch)的方法，通过在数组中发送它们。MCP实现**可以**支持发送JSON-RPC批处理，但**必须**支持接收JSON-RPC批处理。

## 认证

MCP提供了用于HTTP的[授权](/specification/2025-03-26/basic/authorization)框架。使用基于HTTP的传输的实现**应该**符合此规范，而使用STDIO传输的实现**不应该**遵循此规范，而应从环境中检索凭据。

此外，客户端和服务器**可以**协商自己的自定义认证和授权策略。

有关MCP认证机制演变的进一步讨论和贡献，请加入我们的[GitHub讨论](https://github.com/modelcontextprotocol/specification/discussions)，帮助塑造协议的未来！

## 模式

协议的完整规范定义为[TypeScript模式](https://github.com/modelcontextprotocol/specification/blob/main/schema/2025-03-26/schema.ts)。这是所有协议消息和结构的真实来源。

还有一个[JSON模式](https://github.com/modelcontextprotocol/specification/blob/main/schema/2025-03-26/schema.json)，它是从TypeScript真实来源自动生成的，用于各种自动化工具。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.