Skip to main content
Glama

Universal MCP Gateway

Un único punto de entrada MCP local para múltiples agentes de código. Actúa como proxy de las herramientas MCP ascendentes configuradas, mantiene las sesiones ascendentes activas, serializa las llamadas para servicios exclusivos, informa de los recursos de los procesos y expone pequeñas herramientas de tareas, bloqueos y memoria basadas en SQLite.

Inicio rápido

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

Conecte un cliente MCP a:

http://127.0.0.1:8000/mcp

Los clientes que solo admiten stdio pueden ejecutar un proceso de puente del gateway:

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

Related MCP server: warmplane

Configuración

[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

Las herramientas ascendentes se exponen como <server_id>__<tool_name>. Las herramientas de coordinación del gateway usan el prefijo gateway__. per_agent es específico del proceso en la v0.1; ejecute un puente de gateway por agente para unas sesiones ascendentes separadas. La primera versión solo ofrece herramientas mediante proxy; los recursos, los prompts, el muestreo y la planificación distribuida se difieren deliberadamente.

Operaciones

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

La API de administración es de solo loopback por defecto:

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

Establezca la variable de entorno de token configurada para exigir Authorization: Bearer ... en las solicitudes HTTP de MCP y administración. Los comandos y los argumentos se leen únicamente de TOML; el gateway nunca ejecuta una cadena de shell recibida de un agente.

Herramientas de trabajo compartido

El gateway ofrece arrendamientos de tareas, actualizaciones optimistas de tareas, bloqueos de recursos y memoria de texto por proyecto a través de las herramientas gateway__*. Los sistemas SQLite usan el modo WAL y transacciones cortas. Los arrendamientos y los bloqueos caducan, de modo que un agente desconectado no retiene el trabajo indefinidamente.

No almacene credenciales, transcripciones sin procesar ni datos de producción en el almacén de memoria local.

Desarrollo

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

Consulte SPEC.md y tasks/plan.md para ver el contrato actual y el trabajo pendiente.

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