
# MCP协议版本介绍
MCP（模型上下文协议）是智能体连接外部工具与数据的通用开放标准。为保障协议兼容性，AgentArts在创建网关时支持配置一个或多个MCP协议版本。网关创建后，调用接口时网关会校验请求中携带的协议版本是否在已配置的支持列表中。
当前网关MCP支持的协议版本及官方文档如下：
- [2025-11-25](https://modelcontextprotocol.io/specification/2025-11-25)
- [2025-06-18](https://modelcontextprotocol.io/specification/2025-06-18)
- [2025-03-26](https://modelcontextprotocol.io/specification/2025-03-26)
![](https://support.huaweicloud.com/highcode-agentarts/public_sys-resources/note_3.0-zh-cn.png)
- MCP协议版本的协商涉及网关调用方、网关和Target之间的版本协商。
- 网关调用方通过初始化请求与网关协商MCP协议版本。非初始化请求通过Mcp-Protocol-Version请求头传递协商版本；若传递的版本不在网关支持范围内，网关将拦截请求并报错（非初始化请求2025-03-26版本可不传，默认为2025-03-26版本）。
- 网关通过初始化请求与Target协商MCP协议版本，若Target版本高于网关支持的最新版本，将无法调用成功，建议根据Target支持的协议版本合理配置网关版本。
 
#### 约束与限制
1. 方法调用限制 当前网关仅支持以下四种MCP方法调用：
   initialize、tools/list、tools/call、ping
   
2. 批量请求限制 不支持 JSON-RPC 批量请求与响应（JSONRPCBatchRequest / JSONRPCBatchResponse）。
   
3. 部分方法下的扩展能力暂不支持：
   - tools/call 方法：不支持 tasks 能力，无法通过tools/call方法调用包含任务列表的工具。
   
   - tools/list 方法：不支持 tools.annotations（注解信息）、outputSchema（输出模式）、$schema（ JSON Schema）、icons（图标）能力。
    
4. 响应格式限制 调用网关接口的响应统一以text/event-stream方式返回。
   
 
#### MCP网关协议版本配置示例
1. 创建网关。 
   1. 在AgentArts平台左侧导航栏中选择"开发中心 \> 组件库"，并进入"网关"页面，单击"创建网关"。
   
   2. 参考[创建网关](https://support.huaweicloud.com/highcode-agentarts/agentarts_10_024.html)，创建"MCP 版本"为**"2025-06-18"** 版本的网关。
      图1填写网关基础信息与权限身份认证   
      ![](https://support.huaweicloud.com/highcode-agentarts/zh-cn_image_0000002629625584.png "点击放大") 
   
   
   
   
2. 创建Target。 
   在"关联Target"区域单击"创建Target"，参考[创建Target](https://support.huaweicloud.com/highcode-agentarts/agentarts_10_025.html)，分别创建"**MCP**"类型的TargetA、TargetB、TargetC。Target的MCP协议版本取决于其对应后端服务实际支持的协议版本，本示例中假设各Target的协议版本如下：
   - TargetA的MCP协议版本为2025-03-26。
   
   - TargetB的MCP协议版本为2025-06-18。
   
   - TargetC的MCP协议版本为2025-11-25。
   
   
   
   
3. 调用网关。 
   具体的调用操作请参考[使用网关](https://support.huaweicloud.com/highcode-agentarts/agentarts_10_026.html)，当前示例网关支持的MCP版本为2025-06-18，以下为调用网关的场景示例：
   - **场景一：**
     当调用方使用2025-03-26版本向网关发起initialize请求，会返回网关支持的协议版本2025-06-18，调用成功。
     
    
   - **场景二：**
     当调用方使用2025-03-26版本向网关发起tools/list请求，因2025-03-26版本不在网关支持范围内，网关将拦截请求并报错。
     
   
   - **场景三：**
     当调用方使用2025-06-18版本向网关发起tools/list请求，网关调用成功。TargetA和TargetB的工具可正常返回，但由于TargetC版本高于网关支持的最高版本，故无法获取TargetC中的工具。
     
   
   - **场景四：**
     当调用方使用2025-06-18版本向网关发起TargetA的tools/call请求，TargetA的版本低于网关支持的最高版本，调用成功。
     
   
   - **场景五：**
     当调用方使用2025-06-18版本向网关发起TargetC的tools/call请求，因TargetC版本高于网关支持的最高版本，网关无法适配，调用失败并报错。
     
   
   
   
   
 
