MCP 网关
MCP 服务器,
MCP 服务器,
网关代理。
接入 GitHub、Linear、Jira、搜索、表格 —— 任意 MCP 服务器。 经由 Xcity 统一鉴权、权限管控与按工具计费追踪。
6 级权限级联
访问解析命中即停。从最具体(key)到最宽泛(toolset 捆绑)。
1
Key 级
token 上显式声明的 mcp_servers
2
Team 级
经 team.object_permission 继承
3
Org 级
组织级授权
4
User 级
个人访问授权
5
Agent 级
A2A 调用时铸造的 key
6
Toolset 级
(server, tool) 对的命名捆绑
覆盖所有鉴权模式
从公开 MCP 到 OAuth2 + PKCE 透传。凭证安全托管,或把鉴权委托给上游。
| auth_type | 说明 |
|---|---|
none | 公开 MCP |
api_key | 单一静态密钥 |
bearer_token | Authorization: Bearer *** |
basic | HTTP Basic |
oauth2 | 托管 OAuth 流程 |
oauth2_token_exchange | RFC 8693 OBO |
delegate_auth_to_upstream | PKCE 透传 |
三种调用方式
走 chat completions、直连 REST,或 URL 命名空间端点。
/v1/chat/completions
把 MCP 工具放进 tools 数组。代理拦截工具调用、执行、回填结果。
/mcp-rest/tools/call
直连 REST 调用。鉴权一致,工具名格式 {server_alias}.{tool_name}。
/github/mcp/v1/...
面向固定 MCP 集合的 URL 命名空间,仅暴露该作用域服务器的工具。
5 行接入
import xct from "@xct/sdk"
# 1. 列出可用的 MCP 工具
tools = xct.mcp.list_tools() # GET /v1/mcp/tools
# 2. 在 chat 中直接使用 —— 执行由代理完成
reply = xct.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "找出 main 分支的回归"}],
tools=tools,
extra_headers={"x-mcp-servers": "github"},
) 审批工作流
非管理员可通过 POST /v1/mcp/server/register 提议接入 MCP 服务器,管理员在 /submissions 审核。
审批通过前,记录保持 pending_review 状态且不可路由。
网关实时注册表
当前注册在网关上的 MCP 服务器 —— 标注了可访问的套餐。
🔎 web-search 即将上线 Web Search
Live web search for grounded, citation-backed answers.
🐙 github 即将上线 GitHub
Repos, issues, and pull requests as agent tools.
🌐 browser 即将上线 Browser Automation
Drive a real browser: navigate, extract, screenshot.
注册即用 → 精选阵容 —— 首批即将上线。免费注册,抢先体验。