Token导航 LogoToken导航

MCP Server · 运维云端

Uni MCP Gateway

一个统一的MCP(模型上下文协议)网关,聚合多个MCP服务器和API插件,提供认证、细粒度速率限制、审计日志、REST API桥接和Web仪表板功能。

stdio官方级别未说明来源级核验工具 4
安全审计PythonClaudeClaude DesktopCursor

快速开始

作者 / 组织
dropoutsanta
提供方
dropoutsanta

工具数量

4

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

7

仓库热度

收录来源

1 个

MCP World

选型结论

Uni MCP Gateway 属于运维云端类 MCP Server,公开资料标注 4 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cursor,有可以直接复制的安装命令;接入前要先准备 访问 Token。

分类

运维云端

传输方式

stdio

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

安装命令

pip install -e .

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 4 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

uni-mcp网关

一个统一的MCP(模型上下文协议)网关,将多个MCP服务器和API插件聚合在一个端点后面,具有身份验证、细粒度速率限制、审计日志、REST API桥和web仪表板。

通过一个URL、一个API密钥和一个审计跟踪,将您的人工智能代理连接到数十个服务。

我们为什么建造这个

我们在数十个环境中运行AI代理——Cursor、Claude Desktop、Opencode、自定义机器人。每个环境都需要自己的MCP连接、自己的身份验证和自己的配置。它不断地破裂,并严重地膨胀。以下是促使我们构建这个的原因:

重新认证地狱。 每次添加新的IDE、新代理或新机器时,都需要从头开始重新对每个MCP服务器进行身份验证。使用网关,您只需进行一次身份验证。每个环境只需要一个URL和一个API密钥。

上下文窗口膨胀。 连接5台MCP服务器,每台服务器有50个工具,代理的上下文窗口在开始工作之前就塞满了250个工具模式。网关的元工具架构(list_plugins → search_tools → get_tool_schema → call_tool)在上下文中总是意味着只有4个工具。代理商根据需要发现他们需要什么。

多账户混乱。 需要两个Slack工作区吗?三个日历账户?五个电子邮件收件箱?如果没有网关,那就是10个单独的MCP服务器,配备10倍的工具。网关本机处理多个帐户——一个插件、一组工具、pass account="work" 或 account="personal".

代理不需要API文档。 网关兼作REST API网桥。任何工具都可以通过调用 POST /api/v1/call没有Swagger规范,没有SDK设置——代理(和脚本)只需使用JSON参数按名称调用工具。网关是API。

最后是审计和访问控制。 与人员或代理共享API密钥,并确切地知道他们做了什么。每次工具调用都会记录完整的请求、响应、持续时间和调用者。设置粒度范围——此键可以读取Slack但不能发送,可以访问“工作”日历但不能访问“个人”,可以调用 gmail_messages_list 每分钟30次,但 gmail_messages_send 只有5。

特性

核心

  • 统一端点 -一个MCP URL,一个API密钥,访问所有内容
  • 插件架构 --将Python文件放入 plugins/,重新启动,完成
  • 外部MCP桥接 --通过网关代理任何远程MCP服务器(无需代码)
  • REST API桥接 --每个工具都可以通过标准HTTP访问 GET/POST 端点
  • Web仪表板 --登录、查看统计数据、管理密钥、浏览审计日志

安全

  • API密钥验证 --具有独立权限的多个密钥
  • 按插件访问控制 --每个插件每个密钥的读、写或管理员访问权限
  • 粒度速率限制 --全局每个密钥、每个插件、每个帐户、每个工具限制
  • IP 白名单 --将密钥限制在特定的CIDR范围内
  • 密钥过期 -自动导出API密钥
  • 隐身模式 -未经授权的API请求返回404(端点似乎不存在)
  • 审核日志记录 --每个工具调用都记录了请求、响应、持续时间和调用者

多租户技术

  • 多账户插件 --每个服务有多个帐户(例如,两个Slack工作区、三个Calendary帐户)
  • 数据级别范围界定 --将密钥限制到特定的数据子集(例如WhatsApp聊天JID)
  • 工具可见性过滤 --密钥只能看到他们有权访问的工具

上下文窗口优化

  • 元工具架构 --与其向代理暴露300多个工具,不如暴露4个元工具:

- list_plugins --查看可用内容 - search_tools --按关键字查找工具 - get_tool_schema --获取特定工具的参数 - call_tool --执行任何工具

快速开始

1.克隆并安装

git clone https://github.com/nickcold/uni-mcp-gateway.git
cd uni-mcp-gateway
pip install -e .

2.设置您的管理员令牌

export MCP_AUTH_TOKEN=$(python3 -c "import secrets; print(secrets.token_urlsafe(32))")
export MCP_BASE_URL=http://localhost:8080
export GATEWAY_DB_PATH=./gateway.db
echo "Your admin token: $MCP_AUTH_TOKEN"

3.跑步

python -m uvicorn main:app --host 0.0.0.0 --port 8080

4.连接

添加到您的MCP客户端(Cursor、Claude Desktop等):

{
  "mcpServers": {
    "gateway": {
      "url": "http://localhost:8080/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_ADMIN_TOKEN"
      }
    }
  }
}

或者使用REST API:

# List plugins
curl -H "Authorization: Bearer $MCP_AUTH_TOKEN" http://localhost:8080/api/v1/plugins

# Call a tool
curl -X POST -H "Authorization: Bearer $MCP_AUTH_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"tool": "gmail_messages_list", "params": {"max_results": "5"}}' \
  http://localhost:8080/api/v1/call

添加插件

选项A:编写一个插件(包装任何API)

复制 plugins/_example.py 并修改:

from plugin_base import MCPPlugin, ToolDef, get_credentials

def list_items(query: str = "") -> dict:
    """List items from the API."""
    api_key = get_credentials("myservice").get("api_key", "")
    # ... call the API ...
    return {"items": [...]}

class MyServicePlugin(MCPPlugin):
    name = "myservice"
    tools = {
        "list_items": ToolDef(access="read", handler=list_items, description="List items"),
    }

重新启动网关。您的工具显示为 myservice_list_items.

选项B:桥接外部MCP(无代码)

通过管理工具或仪表板连接到任何远程MCP服务器:

gateway_add_external_mcp(
    name="acme",
    url="https://acme-mcp.example.com/mcp",
    auth_header="Bearer their-api-key"
)

网关从远程服务器发现所有工具,并将其公开为 acme_ --包含您的身份验证、速率限制和审计日志。

选项C:仪表板用户界面

首选 http://localhost:8080/dash,使用管理员密钥登录,切换到 外部MCP 选项卡,并填写表格。

管理API密钥

为您的团队或代理创建具有不同权限级别的密钥:

# Via MCP tools
gateway_create_key(
    key_id="staging-bot",
    label="Staging Bot",
    permissions={"gmail": "read", "slack": "write"},
    rate_limit=50
)

# Via REST API
POST /api/v1/call
{"tool": "gateway_create_key", "params": {"key_id": "staging-bot", ...}}

# Via dashboard
http://localhost:8080/dash/admin → Keys tab → + Create Key

粒度速率限制

在任何粒度级别设置限制:

# Per plugin: max 30 Gmail calls/min
gateway_set_rate_limit(key_id="staging-bot", scope="plugin:gmail", rate_limit=30)

# Per account: max 10 calls/min to the "work" Calendly account
gateway_set_rate_limit(key_id="staging-bot", scope="account:calendly:work", rate_limit=10)

# Per tool: max 5 email sends/min
gateway_set_rate_limit(key_id="staging-bot", scope="tool:gmail_messages_send", rate_limit=5)

捆绑插件

插件服务描述
gmailGoogle Gmail API完整的电子邮件管理(发送、阅读、标签、草稿、过滤器、代表)
calendly日历API事件类型、预定事件、受邀者、路由表单
linear线性API问题、项目、团队、评论、标签
notion通知API页面、数据库、块、搜索
slackSlack Web API消息、频道、用户、反应、文件、用户组
bisonEmailBison API电子邮件活动管理、预热、工作区
ai_arkAI Ark API人员/公司搜索、电子邮件查找、电话查找
whatsappWhatsApp(自托管网桥)发送/接收消息、媒体、联系人(需要Go网桥)

所有插件都封装了公共API。通过从中删除文件来删除任何不需要的文件 plugins/.

部署到Fly.io

cp fly.toml.example fly.toml
# Edit fly.toml — set app name, region, MCP_BASE_URL

fly launch --no-deploy
fly secrets set MCP_AUTH_TOKEN=$(python3 -c "import secrets; print(secrets.token_urlsafe(32))")
fly volumes create gateway_data --size 1 --region iad
fly deploy

建筑

┌─────────────────────────────────────────────┐
│              MCP Client (Agent)             │
│         (Cursor, Claude, Opencode)          │
└─────────────┬───────────────────────────────┘
              │ MCP Protocol (Streamable HTTP)
              │ or REST API (/api/v1/*)
              ▼
┌─────────────────────────────────────────────┐
│           uni-mcp-gateway                   │
│                                             │
│  ┌─────────┐ ┌──────────┐ ┌─────────────┐  │
│  │  Auth   │ │  Audit   │ │ Rate Limit  │  │
│  └────┬────┘ └────┬─────┘ └──────┬──────┘  │
│       │           │              │          │
│  ┌────▼───────────▼──────────────▼──────┐   │
│  │          Plugin Registry             │   │
│  │  ┌──────┐ ┌──────┐ ┌──────────────┐  │   │
│  │  │Gmail │ │Slack │ │External MCPs │  │   │
│  │  └──────┘ └──────┘ └──────────────┘  │   │
│  └──────────────────────────────────────┘   │
│                                             │
│  ┌────────────┐ ┌───────────────────────┐   │
│  │  Dashboard │ │  REST API Bridge      │   │
│  └────────────┘ └───────────────────────┘   │
└─────────────────────────────────────────────┘

配置

环境变量默认值描述
MCP_AUTH_TOKEN(必需)用于引导的管理员API密钥
MCP_BASE_URLhttp://localhost:8080网关的公共URL
GATEWAY_DB_PATH/data/gateway.dbSQLite数据库路径
ADMIN_KEY_IDadmin管理员密钥的ID
PORT / MCP_PORT8080服务器端口
WHATSAPP_BRIDGE_URLhttp://localhost:7481WhatsApp Go桥接URL

许可证

麻省理工学院

工具与能力

工具数量

4

资源数量

0

提示词数量

0

能力标签

MCP网关Python本地部署API聚合多租户管理上下文优化安全审计

支持客户端

Claude DesktopClaudeCursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

看服务状态

查询容器、日志和监控指标,定位异常。

执行部署变更

在权限范围内触发发布、回滚和环境切换。

核对资源用量

汇总用量,找出闲置和超额的部分。

选择建议

值得选的地方

  • 只提供 4 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在运维云端场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到访问 Token的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Uni MCP Gateway

MCP World · 本页

4stdio有1 个2026-05-17
Ui Tars Desktop 8a825770

MCP World

0stdio有1 个2026-05-17
Elie222 MCP

MCP World

0未说明未标注1 个2026-05-17
Arizeai Phoenix MCP

MCP World

0stdio有3 个2026-05-17
Unity MCP 87ee506e

MCP World

42HTTP有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Uni MCP Gateway 怎么安装?

公开资料给出的安装命令是 pip install -e .,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Uni MCP Gateway 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Uni MCP Gateway 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Uni MCP Gateway 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Uni MCP Gateway 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP