MCP 网关概览
AISIX 网关通过聚合的 /mcp 端点代理已注册的模型上下文协议(MCP)工具源。工具源可以是使用 Streamable HTTP 的上游 MCP 服务器,也可以是通过 OpenAPI 文档描述的 REST API。有关 REST API 路径,请参阅把 REST API 公开为 MCP 工具。
MCP 客户端和 Agent 使用 AISIX 调用方 API Key 连接 /mcp,发现该 Key 可以使用的工具并调用它们,而不会获得上游 MCP 服务器的凭证。
这样,工具流量就与模型和 A2A 流量共享相同的身份认证、访问控制和遥测边界。一把调用方 API Key 可以同时治理调用方可使用的模型、可调用的 MCP 工具,以及可访问的 A2A Agent。
AISIX 对每个 MCP 请求执行身份认证,并根据调用方的有效工具授权过滤工具发现。对于 tools/call,AISIX 还会应用限流和安全护栏、检查 AISIX Enterprise 和 AISIX Cloud 中适用的预算、使用已配置的上游凭证路由调用,并记录用量遥测。
MCP 网关的工作原理
每个 MCP 服务器都有一个 name。在 AISIX Enterprise 和 AISIX Cloud 中,服务器注册在组织级别,并公开给选定环境。在开源 AISIX 网关中,服务器通常在 resources.yaml 中声明。AISIX 聚合已启用服务器的工具,并以带前缀的名称公开每个工具。
AISIX 使用两个下划线分隔已注册的服务器名称和上游工具名称。例如,github__create_issue 会路由到名为 github 的已注册 MCP 服务器,并调用其名为 create_issue 的上游工具。对于两种管理路径,服务器名称都不能包含保留分隔符 __,不能包含 *,也不能以下划线结尾。服务器名称永远不是模式,因此工具授权中服务器段里的 * 始终表示 Glob,而不是某一台具体的服务器。名称内部可以使用单个下划线,例如 internal_tools。AISIX Enterprise 和 AISIX Cloud 还把名称限制为 56 个字母、数字、下划线、点或连字符,并要求首尾为字母或数字。
开始使用
按照设置 MCP 网关中的步骤,通过 AISIX Cloud Admin API 或 resources.yaml 注册上游服务器,并向调用方 API Key 授予一个工具的访问权限。该指南通过允许和拒绝的 HTTP 检查单独验证网关路径。随后,连接 Cursor 或 VS Code,在真实 MCP 客户端中验证工具发现、所需批准和工具执行。两种管理路径配置的是同一个网关运行时和 MCP 端点。
客户端连接
MCP 客户端通过 Streamable HTTP 连接 AISIX 代理监听器。使用 /mcp 访问聚合工具面:
| 设置 |
|---|