You need to enable JavaScript to run this app.
文档中心
API 网关

API 网关

复制全文
下载 pdf
AI 网关
MCP 服务
复制全文
下载 pdf
MCP 服务
MCP(Model Context Protocol)是一项开源协议,旨在标准化应用程序向大语言模型(LLM)提供上下文的方式,以便模型能够灵活、安全地连接各种数据源和工具。本文介绍在如何 API 网关中创建 MCP 服务。​
背景信息​
MCP 协议用于简化大语言模型(LLM)与外部工具、API 和服务的交互。通过标准化接口,LLM 能够调用外部 API、运行脚本、访问数据库等,扩展了自身能力边界。MCP 的传输层支持多种协议,确保数据高效、安全传输。其典型应用场景包括智能助手与代理、企业级知识管理、开发者工具与 IDE 集成、多模态数据集成等。此外,MCP 还提供了交互式调试工具,帮助开发者高效测试和调试相关服务器与客户端。​
同时,当前在企业内部存在大量的传统 HTTP 应用,虽然 MCP 提供了对应的 SDK,但是仍然需要开发适配的工作。如果能将这些应用转换为 MCP Server,将快速提升 AI Agent 与应用的交互能力。为解决上述问题,API 网关提供 MCP 服务功能,该功能提供 RESTful API 至 MCP 协议的平滑迁移能力,从而能够快速将现有 HTTP 应用转换为 MCP Server。​
​​​
前提条件​
  • 已创建 API 网关实例,详情请参见 创建实例。​
  • (可选)当后端服务为容器服务时,需要将待对接集群添加为 Upstream 来源,具体操作可参见 导入容器集群。​
使用限制​
HTTP 转换为 MCP 时,仅支持通过 Streamable HTTP 协议访问网关。​
操作步骤​
  1. 登录 API 网关控制台。​
  1. 在顶部导航栏,选择目标地域。​
  1. 在左侧导航栏选择 MCP 服务,单击 创建 MCP 服务。​
  • 基本信息​
  • ​​​
  • ​
    配置项​
    说明​
    所属实例​
    在下拉菜单中选择 MCP 服务所属的网关实例。​
    访问域名​
    配置 MCP 服务使用的域名,包括:​
    • 使用已有:使用已创建服务的域名。当您选择该选项时,需要在弹出的下拉菜单中选择已创建的服务。​
    • 新建域名:新建一个新域名。当您选择该选项时,系统会自动生成一个新域名,新域名的名称为mcp-service-xxxx,其中,xxxx为随机字符串。​
    MCP 服务名称​
    配置 MCP 服务的名称,系统会使用该名称创建对应的路由。​
    MCP 服务类型​
    不同类型的后端服务,支持不同的访问方式。包括:​
    • HTTP 转 MCP:若后端服务为 HTTP Server,则选择该选项。MCP Client 的访问报文会被转换为 HTTP 报文,然后使用 HTTP 协议访问 HTTP Server。​
    • 直接访问 MCP:若后端服务为 MCP Server,则选择该选项。MCP Client 会直接访问后端 MCP Server。​
    说明​
    当访问方式选择 直接访问 MCP 时,MCP 服务会默认绑定 MCP 会话保持插件。详情请参见 MCP 会话保持。​
    MCP 传输类型​
    当 MCP 服务类型 选择 直接访问 MCP 时,需要配置 MCP 传输类型。当前仅支持 Streamable HTTP。​
    MCP 服务路径​
    配置 MCP 服务的访问路径。​
    ​
  • 后端配置​
  • ​​​
  • ​
    配置项​
    说明​
    后端服务​
    配置 Upstream 对接的后端服务,包括:​
    • 选择已有 Upstream:选择后端服务所在的云资源(容器服务、函数服务、云服务器等)和已存在的 Upstream。​
    • 新建 Upstream:配置指定的后端服务 Upstream。不同类型 Upstream 的配置方式和参数解释,请参见 Upstream 管理。​
    ​
  1. 单击 确定,完成配置。​
后续配置​
获取访问方式和示例​
  1. MCP 服务创建完成后,在服务列表中选择目标服务,单击服务名称,进入服务详情页面。​
  1. 选择 基本信息 页签,在 调用示例 中即可获得该 MCP 服务的调用域名和调用示例。​
  • ​​​
说明​
如果您已安装 TRAE,可以单击 去 TRAE CN 配置,跳转至 TRAE 控制台进行快速配置。​
开启认证鉴权​
  1. MCP 服务创建完成后,在服务列表中选择目标服务,单击服务名称,进入服务详情页面。​
  1. 选择 基本信息 页签,并开启 身份认证 功能。在弹出的配置页面中,使用 Key Auth 插件配置 API Key 认证鉴权。更多配置详情,请参见 API Key 认证鉴权。​
  • ​​​
添加 MCP Tools​
说明​
仅当 MCP 服务类型 选择 HTTP 转 MCP 时,允许添加 MCP Tools。​
MCP 服务创建完成后,支持基于 Swagger 文件添加 MCP Tools。操作步骤如下:​
  1. MCP 服务创建完成后,在服务列表中选择目标服务,单击服务名称,进入服务详情页面。​
  1. 选择 MCP Tools 页签,单击 上传 MCP 配置。​
  • ​​​
  1. 单击或拖拽文件到控制台,上传 MCP Tools 文件。​
  • ​​​
  1. 单击 确定,完成配置。配置完成后,您可以在 MCP Tools 页面中查看已上传的工具详情。​
  • ​​​
常见问题​
如何上传正确的 MCP 配置文件​
  • 使用限制​
  • MCP 配置文件需要符合以下条件:​
  • ​
    类型​
    说明​
    语法​
    • 代码中不存在 Swagger/OpenAPI 3 语法错误。​
    • 代码中必须包含 Swagger/OpenAPI 3 元数据、title 和 version。​
    • 建议为每个 Opeartion 设置 operationId。​
    请求方法​
    • 仅支持 GET、POST、PUT、DELETE、PATCH 。​
    • CONNECT、HEAD、OPTIONS 和 TRACE 等请求方法将被忽略。​
    请求类型​
    • 支持 JSON(application/json)和 Form(application/x-www-form-urlencoded)内容类型。​
    • 不支持 application/xml、multipart/form-data 和 application/octet-stream 等内容类型。​
    请求参数​
    • Swagger​
    • 参数的位置为 path、query、header 或 formData 时,array 类型的参数将序列化为逗号分隔值(CSV)。​
    • 参数的数据类型不支持 file。​
    • OpenAPI 3.0​
    • 参数的位置为 path、query、header 或 cookie 时,array 类型的参数将序列化为逗号分隔值(CSV)。​
    响应​
    仅支持解析 200、201 和 default,且仅解析1个。同时存在时,解析的顺序为 200 > 201 > default。​
    ​
  • 代码示例​
  • JSON 格式的 POST 请求示例如下。​
  • Swagger​
  • ​
    {​
    "swagger": "2.0",​
    "info": {​
    "title": "weather",​
    "version": "1.0.0"​
    },​
    "paths": {​
    "/weather/{city}": {​
    "get": {​
    "operationId": "weather",​
    "summary": "Check weather status。",​
    "consumes": ["application/json"],​
    "parameters": [​
    {​
    "name": "city",​
    "description": "City",​
    "type": "string",​
    "in": "path",​
    "required": true​
    },​
    {​
    "name": "body",​
    "in": "body",​
    "schema": {​
    "type": "object",​
    "properties": {​
    "date": {​
    "description": "Date",​
    "type": "string"​
    }​
    }​
    }​
    }​
    ],​
    "responses": {​
    "200": {​
    "description": "Weather status",​
    "schema": {​
    "type": "object",​
    "properties": {​
    "weather": {​
    "description": "Weather",​
    "type": "string"​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    ​
  • OpenAPI 3.0​
  • ​
    {​
    "openapi": "3.0.1",​
    "info": {​
    "title": "weather",​
    "version": "1.0.0"​
    },​
    "paths": {​
    "/weather/{city}": {​
    "get": {​
    "operationId": "weather",​
    "summary": "check the weather",​
    "parameters": [​
    {​
    "name": "city",​
    "description": "city",​
    "type": "string",​
    "schema": {​
    "type": "string"​
    },​
    "in": "path",​
    "required": true​
    }​
    ],​
    "requestBody": {​
    "content": {​
    "application/json": {​
    "schema": {​
    "type": "object",​
    "properties": {​
    "date": {​
    "description": "Date",​
    "type": "string"​
    }​
    }​
    }​
    }​
    }​
    },​
    "responses": {​
    "200": {​
    "description": "weather",​
    "content": {​
    "application/json": {​
    "schema": {​
    "type": "object",​
    "properties": {​
    "weather": {​
    "description": "weather",​
    "type": "string"​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    }​
    ​
最近更新时间:2026.07.21 11:05:28
这个页面对您有帮助吗?
有用
有用
无用
无用