Skip to main content
Glama

Universal MCP Gateway

Единая локальная точка входа MCP для нескольких агентов разработки. Шлюз проксирует сконфигурированные upstream MCP-инструменты, поддерживает upstream-сессии в тёплом состоянии, сериализует вызовы к эксклюзивным сервисам, сообщает о ресурсах процессов и предоставляет небольшие SQLite-инструменты для задач, блокировок и памяти.

Быстрый старт

python -m pip install -e '.[dev]'
cp config.example.toml config.toml
mcp-gateway serve --config config.toml

Подключите MCP-клиент к:

http://127.0.0.1:8000/mcp

Клиенты, поддерживающие only stdio, могли бы запустить one bridge-process шлюза:

{
  "command": "mcp-gateway",
  "args": ["serve", "--config", "/absolute/path/config.toml", "--transport", "stdio"]
}

Related MCP server: warmplane

Конфигурация

[gateway]
host = "127.0.0.1"
port = 8000
database = "gateway.db"
auth_token_env = "MCP_GATEWAY_TOKEN"

[servers.example]
transport = "stdio"
command = "npx"
args = ["-y", "some-mcp-server"]
mode = "exclusive"
max_in_flight = 1
queue_limit = 32

[servers.remote]
transport = "streamable_http"
url = "http://127.0.0.1:9000/mcp"
mode = "pool"
max_connections = 2
queue_limit = 64

Upstream-инструменты предоставлятся как <server_id>__<tool_name>. Координ-инструменты шлюза используют префикс gateway__. In v0.1 per_agent limited by process; if you need separate upstream sessions, run one stdio bridge for each agent. First release proxies only tools; ресурсы, промптс, сэмплинг and distributed planning are consciously deferred.

Эксплуатация

mcp-gateway status
mcp-gateway start example
mcp-gateway stop example
mcp-gateway restart example

The admin API is available only through loopback by default:

GET  /health
GET  /v1/status
POST /v1/servers/{id}/start
POST /v1/servers/{id}/stop
POST /v1/servers/{id}/restart

Set the configured token environment variable "to require" Authorization: Bearer ... for MCP requests and admin HTTP requests. Read TOML-only for commands and arguments; the gateway never executes shell strings from the client.

Совмесные инструменты работы

Шлюз prefix gateway__* tools provide lease on tasks, optimistic task updates, resource locks and text memory limited to the project. SQLite uses WAL and short transactions. Locks and task leases expire, so a disconnected agent doesn't hold work forever.

No store warrants in local memory...

Development

python -m pytest -q
python -m compileall -q universal_mcp_gateway
git diff --check

Текущий контактракт and отложенная работа described in SPEC.md and tasks/plan.md.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    An agent-neutral MCP server providing SQLite key/value storage, Postgres knowledge base, and Kart task queue functionality. Features SAP/1.0 authorization on every tool call for secure multi-application access.
    1,074 PyPI
    3
    Apache 2.0
  • F
    license
    Not graded
    quality
    A
    maintenance
    Runs multiple upstream MCP servers behind one local process, keeping sessions persistent and exposing a compact, policy-aware surface for tools, resources, and prompts via HTTP, CLI, and MCP-native clients.
    5
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides a centralized, deterministic MCP endpoint with routing, logging, and browser automation, enabling multiple LLMs to share a consistent set of tools including jq, ripgrep, Git, Python, and headless Chromium.
    MIT