MCP Gateway
Integra múltiples servidores MCP en una única interfaz con una interfaz web de gestión y actualizaciones de estado en tiempo real.
Documentación
MCP Gateway
Un gateway MCP exclusivamente local. Desde la interfaz de navegador puedes registrar servidores, gestionar perfiles y arrancar/detenerlos. Los clientes MCP pueden conectarse mediante una única conexión WebSocket a través de /mcp (especificando serverId o profile).
Configuración / Ejecución
pnpm install
pnpm --filter mcp-gateway-ui run build
pnpm start # http://127.0.0.1:8787
# オプション: --port=8787 --host=127.0.0.1 --data-dir=/path/to/data を cli.js に渡せます
Conexión desde clientes MCP
-
Especificando el ID del servidor
ws://127.0.0.1:8787/mcp?serverId=<サーバーID>
Ejemplo:claude mcp add mcp-github --url ws://127.0.0.1:8787/mcp?serverId=github-mcp -
Especificando el nombre del perfil (se conecta al primer servidor de ese perfil)
ws://127.0.0.1:8787/mcp?profile=<プロファイル名>
Ejemplo:claude mcp add mcp-dev --url ws://127.0.0.1:8787/mcp?profile=dev
Registro de ejemplo (opcional)
El estado inicial está vacío. Si deseas ejemplos, puedes cargarlos mediante el comando.
pnpm init:samples # github-mcp (port 9000), fs-mcp (port 9001), default/dev プロファイルを追加
pnpm init:samples -- --force # 既存を上書きしたい場合
Funciones
- Registro/edición/eliminación de servidores MCP (command/args/env, autoStart)
- Creación/eliminación/cambio de perfiles (varios pueden estar activos a la vez). Los servidores con autoStart de los perfiles activos se inician automáticamente
- Inicio/Detención manual, los registros están en
~/.mcp-gateway/logs/<id>.log - Guardado de estado:
~/.mcp-gateway/state.json - Proxy MCP: se puede cambiar entre serverId / profile mediante
/mcp
Endpoints de la API
GET /api/healthGET /api/stateGET /api/serversPOST /api/serversPUT /api/servers/:idDELETE /api/servers/:idPOST /api/servers/:id/startPOST /api/servers/:id/stopGET /api/profilesPOST /api/profilesPUT /api/profiles/:nameDELETE /api/profiles/:namePOST /api/profiles/:name/activatePOST /api/profiles/active(names: string[])POST /api/reloadGET /api/statusGET /api/logs/:id?lines=200
Pruebas
pnpm test
Directorios
src/: núcleo del servidor, CLI, almacenamiento, gestor de procesos, proxy WebSocketui/: Vite + React + shadcn UI
Notas
- Solo la primera vez se requiere
pnpm install. A partir de entonces funciona sin conexión. - Desde Claude y otros, registra
/mcp?serverId=...o/mcp?profile=....