mcp-context-forge

统一网关聚合 MCP/A2A/REST,让 Agent 调用更安全可控。

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 基础设施 🍴 复刻 957 🐛 待处理 995 👀 关注 32
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 4749
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费,基于Apache许可证

项目预览

mcp-context-forge 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类基础设施
开发团队IBM
定价模式🏷️完全免费
价格说明开源免费,基于Apache许可证
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型agents,ai,api-gateway,asyncio,authentication-middleware,devops,docker,fastapi,federation,gateway,generative-ai,jwt,kubernetes,llm-agents,mcp,model-context-protocol,observability,prompt-engineering,python,tools
GitHub 星标★ 4749
上线时间2025-05-08 00:00:00
代码更新2026-11-03
仓库体积446.8 MB
本站数据更新2026-11-04
维护状态活跃
收录时间2026-09-16
浏览次数1

项目介绍

mcp-context-forge 是一个面向 AI Agent 与工具调用的统一网关、注册中心和代理服务。它位于 MCP、A2A 以及 REST/gRPC API 之前,把分散的模型上下文协议服务、智能体接口和传统 API 聚合到一个统一端点,解决多协议、多服务接入时发现难、鉴权乱、调用链路不透明的问题。核心能力包括集中式服务发现与注册、JWT 等认证中间件、访问护栏与策略控制、请求路由与代理、对 Agent 和工具调用的优化,以及插件扩展机制。项目基于 Python、FastAPI 和 asyncio 构建,适合需要把 MCP 工具、A2A 智能体和既有 API 统一治理的团队,作为 AI 基础设施层降低集成与运维成本。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-16 · 当前星标 ★ 4749

使用教程

难度:进阶 约 15 分钟 部署方式:Docker 7 步

环境要求

  • Python 3.11 环境(官方 Dev Container 内置 Python 3.11)
  • 必须提供 JWT_SECRET_KEY 与 AUTH_ENCRYPTION_SECRET,缺失则网关无法启动
  • Docker 或 Podman,用于容器化部署(可选用 PostgreSQL + Redis 完整栈)
  • 注意:arm64 目前不支持生产环境,Apple Silicon 需用 Rosetta 跑容器或改用 PyPI 安装
  • 源码方式需要 make 与项目依赖(make venv install-dev)

安装与启动步骤

  1. 1创建虚拟环境

    新建目录并创建隔离的 Python 虚拟环境,避免污染系统环境;Windows 用 .\.venv\Scripts\Activate.ps1 激活。

    mkdir mcpgateway && cd mcpgateway
    python3 -m venv .venv && source .venv/bin/activate
  2. 2安装网关包

    从 PyPI 安装 mcp-contextforge-gateway;README 也给出 uv 方式,可先 uv venv 再 uv pip install。

    pip install --upgrade pip
    pip install mcp-contextforge-gateway
  3. 3生成必要密钥

    网关在任何环境(含本地开发)都要求这两个密钥,用官方脚本生成真实密钥后再启动。

    python3 -m mcpgateway.scripts.init_secrets
  4. 4准备 .env 文件

    复制示例配置并用脚本把生成的真实密钥回填到 .env,占位值会导致启动失败。

    cp .env.example .env
    python3 -m mcpgateway.scripts.init_secrets --patch-env .env
  5. 5容器启动全栈

    在仓库根目录用 Make 目标启动 PostgreSQL、Redis、3 个网关副本与 Nginx;需已存在含真实密钥的 .env。

    make compose-up
  6. 6源码方式运行

    从源码安装开发依赖并构建 Admin UI,然后由 gunicorn 在 4444 端口提供网关服务。

    make venv install-dev
    make serve
  7. 7代理示例服务

    用 mcpgateway.translate 把标准输入输出的 MCP 时间服务器暴露为 SSE 服务,端口 8003,可换成 podman。

    python3 -m mcpgateway.translate --stdio "docker run --rm -i ghcr.io/ibm/fast-time-server:latest -transport=stdio" --expose-sse --port 8003

关键配置

配置项必填说明示例
JWT_SECRET_KEY是JWT 签名密钥,所有环境都必须配置,否则网关拒绝启动生成脚本产出的随机长字符串
AUTH_ENCRYPTION_SECRET是认证信息加密密钥,与 JWT 密钥同为启动必填项生成脚本产出的随机长字符串
DATABASE_URL否SQLAlchemy 连接串,默认使用本地 SQLite 文件postgresql+psycopg://user:password@localhost:5432/mcp
HOST否服务绑定地址,默认 0.0.0.00.0.0.0
MCPGATEWAY_UI_ENABLED否是否启用 Admin UI 管理面板,默认开启true
SECURE_COOKIES否HTTP(非 HTTPS)本地开发时需设为 falsefalse

如何确认成功

compose 启动后 Nginx 监听 :8080;执行 make serve 时 gunicorn 监听 :4444 即表示网关已启动成功。

常见问题

Q:.env 缺失或用占位密钥会怎样?

A:网关会在启动时快速失败,通过 Pydantic 抛出校验错误。请先复制 .env.example 并用 init_secrets --patch-env 写入真实密钥。

Q:docker compose up -d 报 cryptography 或依赖解析错误?

A:这是本地构建缺少 CI 产出的封闭 wheel 集合所致,改用 GHCR 预构建镜像即可,compose 默认就会拉取预构建镜像。

Q:Apple Silicon 上容器跑不起来?

A:README 说明当前 arm64 不支持生产环境,可用 Rosetta 运行容器,或改用 PyPI 安装方式部署。

Q:跨网关 UAID 路由提示 UAID_ALLOWED_DOMAINS not configured?

A:在 .env 中把可信域名加入 UAID_ALLOWED_DOMAINS 白名单,并确保两端信任同一 JWT 签发方(共享密钥或联邦 SSO)。

注意事项

  • JWT_SECRET_KEY 与 AUTH_ENCRYPTION_SECRET 在包括本地开发在内的所有环境都是必填项,网关不会以占位值启动。
  • docker compose up -d 默认不本地构建镜像,而是使用 GHCR 预构建镜像,本地构建需要 CI 才能产出的 wheel 闭包。
  • 当前 arm64 不支持生产环境,M1/M2 等 Apple Silicon 机器建议用 Rosetta 或 PyPI 安装。
  • 完整配置包含 300+ 环境变量,按认证、缓存、SSO、可观测性等分类,详见官方 Configuration Reference。

核心亮点

  • 统一 MCP、A2A、REST/gRPC 多协议入口,减少 Agent 对接多种服务的重复适配
  • 内置注册中心与集中发现,服务上线后可被 Agent 动态感知,无需硬编码地址
  • 提供 JWT 认证、护栏和插件机制,便于在网关层做权限、审计和策略扩展

不足之处

  • 项目处于成长阶段,生产环境大规模验证案例和长期稳定性数据仍待积累
  • 多协议聚合与插件体系带来一定部署和配置复杂度,小团队上手成本不低

适用场景

  • 企业把内部多个 MCP 工具服务统一注册,供不同 Agent 按权限发现和调用
  • AI 平台将 A2A 智能体与既有 REST API 通过一个网关暴露,统一鉴权和限流
  • 需要审计和护栏的团队在网关层记录 Agent 工具调用链路并施加访问策略

替代项目

Kong、APISIX、Envoy

上一篇:Sentinel_Guard

下一篇:tiny-vllm

同类项目推荐

bacalhau 开源

把计算搬到数据身边,省时省钱跑批处理

Community-driven, simple, yet powerful framework for fast, cost-effective distribute···

★ 876 2026-08-09
M365-Copilot2API 开源

把 M365 Copilot 变成 OpenAI 接口,客户端零改动直接调

Microsoft 365 Copilot → OpenAI / Anthropic 兼容 API 网关。

★ 613 2026-10-23
muninndb 开源

会遗忘、会强化、带置信度的 AI 原生记忆库

The cognitive database. A new class of data storage. Not a vector store, not a graph···

★ 335 2026-10-02
clearml-serving 开源

一键编排多模型推理服务,自动伸缩省运维

ClearML - Model-Serving Orchestration and Repository Solution

★ 170 2026-08-09
paddler 开源

自托管 LLM 负载均衡,简单部署,CPU/GPU 通吃

Open-source LLM/VLM load balancer and serving platform for self-hosting LLMs (and VL···

★ 1689 2026-08-09
pixeltable 开源

像用数据库一样管理多模态 AI 数据,省去管道工程

The backend agents build with - Multimodal database, orchestration, and serving in o···

★ 1658 2026-08-09
metabase 开源

让不懂 SQL 的同事也能轻松做数据分析,五分钟搭建团队 BI 看板

The easy-to-use open source Business Intelligence and Embedded Analytics tool that l···

★ 50145 2026-08-29
Free-GPT-Grok-Gemini-Claude-API 开源

一个API直连GPT/Claude/Gemini,国内可用,支付宝付款

Access GPT-5, o4, Claude 4.5 & Gemini 3 via one API. The best OpenRouter alternative···

★ 218 2026-08-09
ChannelMonitor 开源

定时自动测试渠道模型,故障秒级标记,减少 API 报错

Channel Monitor 是一个用于监控OneAPI/NewAPI/OneHub渠道的工具,它直接读取channels和ab···

★ 297 2026-08-09