MCP Gateway & Registry
面向企业级 AI 资产的统一治理控制平面:把散落的 MCP 服务器、A2A 智能体与技能收敛为一个经过认证、可审计的入口。
文档声称细粒度 scopes、fail-closed 注册扫描门禁、per-user 出口凭证保管(hvac/Vault 依赖可佐证)、遥测可关且声明无 PII;扣分点:多数安全声明仅以链接引用,本批文件未含核心实现代码,注册/代理操作的用户确认机制只见断言未见证据;依赖方面 pyproject 大量使用最低版本边界,还有一条直接 git 钉定的第三方依赖,未见 lockfile 证据;回滚/升级路径仅在一篇 FAQ 标题中提及;SECURITY.md 将漏洞报告指向 AWS 而仓库归属 agentic-community,来源归属含混。
pyproject 配置细致(覆盖率门槛、bandit、mypy、ruff、注释解释钉版原因),CI 权限最小化并按 SHA 钉定 actions,自洽性尚可;但 pyproject 版本号 0.1.0 与 README 宣称的 1.27–1.31 发布节奏不一致,requires-python >=3.14 也与 ruff target py311 相互矛盾;预构建镜像依赖 ECR Public,其可用性无法在静态审查中证实;错误消息仅见于测试脚本,主服务代码未提供。
README 按开发者/平台团队/决策者分受众并有明确入口,部署覆盖 EKS/ECS/Docker Compose/macOS,加分充分;新功能普遍标注默认关闭与 opt-in,边界意识较好;但实际拦截/确认的触发语义(何时需要管理员复核、扫描失败如何呈现)未在证据文件中展开,能力边界多靠链接断言。
信息架构出色:文档分层清晰、README 有 CI 强制的行数预算与结构说明;安装文档(Quick Start、配置参考、多平台指南)完整;FAQ、demo、示例丰富;Apache-2.0 LICENSE 全文在场。扣分点:已知局限基本不写,行文偏营销;版本管理上 pyproject 仍是 0.1.0 与 release notes 体系脱节;维护主体身份不明(agentic-community vs AWS 报告渠道)。
宣称统一网关+注册表+治理审计,对 MCP 工具治理痛点是明确的高边际价值,且有四类资产、联邦、语义搜索等差异化功能;输出可用性(API/OpenAPI、CLI、UI)有文档支撑;扣分点:部署面复杂(nginx+FastAPI+MongoDB+Keycloak+多服务镜像),依赖极重(torch、langchain 全家桶),小型团队的成本收益存疑,且效果无执行证据。
几乎所有声明都带仓库内路径或设计文档链接,事实与路线图(shipped vs working on next)区分清楚;扣分点:文档互相引用属自证,第三方佐证(AWS workshop 链接、cisco scanner 钉定 commit)无法在本批文件内核实,安全与性能结论均无测试或审计报告可查。
- 发布者身份未经核验,SECURITY.md 指向 AWS 漏洞报告渠道但仓库归属 agentic-community,采用前请确认实际维护主体与支持责任。
- 仓库安全声明(fail-closed 门禁、出口凭证保管、审计掩码等)均来自文档,本批文件未见对应核心实现代码与测试结果,请勿视为已验证。
- pyproject 依赖几乎全为最低版本边界且包含 git 直接钉定的依赖,生产部署前建议审查 lockfile 与依赖来源。
- 包版本号 0.1.0 与 README 宣称的 1.x 发布体系不一致;requires-python >=3.14 门槛极高,可能限制可部署环境。
- 多服务架构(nginx、FastAPI、MongoDB、Keycloak、ECR 公共镜像)运维与安全面较大,部署前应逐项评估成本与攻击面。
这个 Agent 能做什么,适合哪些场景?
MCP Gateway & Registry(agentic-community/mcp-gateway-registry)是一个开源(Apache-2.0)的企业级 MCP 网关与注册中心,把 MCP 服务器、A2A 智能体、技能和自定义实体统一到一个治理控制平面。其数据平面是 nginx 反向代理,负责 TLS、认证校验与后端路由;控制平面是 FastAPI 编写的 Registry API + UI,负责资产清单、访问模型与审计记录;认证服务器对接 Keycloak、Entra ID、Okta 等身份提供方,MongoDB/DocumentDB 存储配置、向量、会话与审计数据。它提供语义与词法搜索、REST 与 MCP 原生接口,以及安全扫描加默认拒绝的注册准入门。部署形态包括 Amazon EKS(Helm)、Amazon ECS(Terraform)和 Docker Compose(EC2/本地)。适合需要集中工具治理、审计合规与跨团队资产发现的中大型组织采用。
该平台将基础设施分为三层:nginx 反向代理作为数据平面(TLS 终止、auth_request 认证校验、路由到后端),FastAPI Registry API + UI 作为控制平面(管理资产清单、访问模型、审计日志),认证服务器对接企业 IdP(Keycloak、Entra ID、Okta、Auth0、Cognito、PingFederate)完成 OAuth2/OIDC。用户可注册四类内建资产:MCP 服务器、A2A 智能体(默认点对点通信,可选反向代理模式)、SKILL.md 技能(注册时安全扫描)、以及管理员自定义的 schema 驱动实体。调用者通过一个网关令牌访问所有后端,网关支持通用 HTTP 代理(OpenAI、Amazon Bedrock 等模型推理端点也可作为后端,凭据加密存储、出口注入,默认关闭)。它还提供每用户出口认证(3LO/OBO/PAT)以代理 Slack、Atlassian、GitHub 等第三方 SaaS MCP 服务器,虚拟 MCP 服务器聚合多后端工具并做逐工具访问控制,外部注册中心联邦(Anthropic MCP Registry、AWS Agent Registry),身份/组/目标感知的应用级限流与隔离(quarantine)开关,以及带凭据掩码的完整审计日志和 OpenTelemetry 可观测性。
- 平台工程团队需要为多个开发团队提供统一的 MCP 服务器入口,消除每台笔记本上的凭据散乱与手工点对点配置。
- 安全与合规团队要求对 AI 工具访问有完整可归因的审计日志、细粒度 scope 和紧急隔离(quarantine)能力。
- 智能体开发团队希望 A2A 智能体按能力互相发现,并在受治理的注册中心内注册、版本化与检索技能。
- 企业希望以受审计的方式接入 Slack、GitHub、Atlassian 等第三方 OAuth SaaS MCP 服务器,令牌集中保管而非存放在员工本机。
- 运维团队寻求在 EKS(Helm)、ECS(Terraform)或 Docker Compose 上可重复部署的自托管网关,并用 Terraform 配置技能让编码助手代为执行部署。
- 决策者评估是否将分散的 MCP 服务器整合为单一控制平面,可通过执行简报、演示视频和 AWS Workshop 快速验证。
这个 Agent 有哪些优点和局限?
- 数据平面/控制平面分离架构(nginx + FastAPI),治理、访问控制与审计统一覆盖 MCP 服务器、A2A 智能体、技能与自定义实体四类资产。
- 每用户出口认证(3LO/OBO/PAT)与通用 HTTP 网关代理:后端凭据加密存储、出口注入,提供 OpenAI/Bedrock/SaaS 服务器的单一受审计入口。
- 部署与 IdP 生态灵活:支持 EKS(Helm)、ECS(Terraform)、Docker Compose,以及 Keycloak、Entra ID、Okta、Auth0、Cognito、PingFederate 多种身份提供方。
- 安全机制具体可验证:注册时安全扫描、默认拒绝的 Webhook 准入门、身份/组/目标感知限流、隔离开关和带凭据掩码的审计日志。
- 部署边界较重:需要 MongoDB/DocumentDB、独立认证服务器和企业 IdP 集成,最小可用配置仍需设置多个密钥并初始化 Keycloak,不适合轻量单机试用之外的快速场景。
- 通用网关代理、限流、A2A 反向代理等关键功能默认关闭,需要逐项开启并理解其设计文档,配置面较大。
- 对 AWS 生态的深度依赖(EKS/ECS/Fargate/DocumentDB/ECR Public)在非 AWS 环境中需要额外的适配与运维。
- 注册中心默认收集匿名遥测(版本、OS、云厂商、资产计数),合规敏感的团队需要主动设置 MCP_TELEMETRY_DISABLED=1。
如何安装或部署这个 Agent?
最快路径是预构建 Docker 镜像:
git clone https://github.com/agentic-community/mcp-gateway-registry.git
cd mcp-gateway-registry
cp .env.example .env# 编辑 .env,设置必要密钥(如 KEYCLOAK_ADMIN_PASSWORD、SECRET_KEY),完整清单见 docs/configuration.md
nano .env
./build_and_run.sh --prebuilt# 打开 Registry UI(nginx 服务于 80 端口)
open http://localhost # macOS(Linux 使用 xdg-open http://localhost)
其他部署:Amazon ECS 参考 terraform/aws-ecs/README.md 的 Terraform 栈;Amazon EKS 参考 charts/README.md 的 Helm chart;完整安装手册(含 MongoDB 与 Keycloak 初始化、首个用户与服务账号、注册服务器、测试网关)见 docs/installation.md。
如何使用这个 Agent?
安装后通过 http://localhost 访问 Registry UI,按 docs/installation.md 初始化 MongoDB 与 Keycloak、创建首个用户和服务账号、注册第一个 MCP 服务器并测试网关。开发者可用 OpenAPI 规范(api/openapi.)、Python 注册客户端 registry_client.py 和 CLI registry_management.py 进行程序化访问;用 docs/ai-coding-assistants-setup.md 将 AI 编码助手接入网关;仓库还附带 macOS 安装技能(.claude/skills/macos-setup/SKILL.md)与 Terraform 部署技能(.claude/skills/terraform-setup/SKILL.md),可让编码助手端到端完成安装或部署。认证、scope 与配置细节见 docs/auth.md、docs/scopes.md、docs/configuration.md。
这个 Agent 与同类方案有什么区别?
README 将其定位为对'无控制平面'状态(每团队手工接线 MCP 服务器、凭据散乱、无审计)的替代,并支持联邦拉取 Anthropic 的 MCP Registry 与 AWS Agent Registry 作为外部注册中心;但这些对比对象在源材料中仅作为联邦源或问题陈述出现,未提供正式的竞争性对比数据。