mcp-gway
MCP Gateway
Автономный CLI-шлюз, который агрегирует несколько MCP-серверов (Model Context Protocol) за одной HTTP/SSE-точкой с Code Mode — снижая расход входных токенов LLM до 92% при использовании нескольких MCP-серверов.
Возможности
Агрегация нескольких серверов — Подключение к нескольким MCP-серверам (HTTP, SSE, Stdio, Streamable HTTP) и предоставление их через единую точку
Code Mode — 4 мета-инструмента, позволяющие LLM динамически обнаруживать и использовать инструменты без предварительной загрузки всех схем
Поддержка OAuth 2.0 — Встроенный OAuth-поток с динамической регистрацией клиентов (RFC 7591) и хранением токенов
Герметичная песочница — Песочница на основе Starlark для безопасного выполнения кода
Соответствие протоколу MCP — Работает с Claude Desktop, Cursor и любым MCP-совместимым клиентом
Related MCP server: ToolMux
Установка
pip install mcp-gwayИли с помощью mise:
mise install
uv syncБыстрый старт
# Add an MCP server
mcp-gway add youtube --type http --url http://localhost:3001/mcp
# Add a stdio server
mcp-gway add filesystem --type stdio --command npx --args '["-y", "@anthropic/mcp-filesystem"]'
# Add a server requiring OAuth
mcp-gway add supabase --type streamable-http --url https://mcp.supabase.com/mcp
# List all servers
mcp-gway list
# Start the gateway
mcp-gway serve --port 8080Подключение из Claude Desktop
Добавьте в конфигурацию Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"gateway": {
"url": "http://localhost:8080/mcp"
}
}
}Команды
Команда | Описание |
| Добавить MCP-сервер и сгенерировать |
| Удалить MCP-сервер |
| Обновить инструменты для сервера |
| Список всех подключенных серверов |
| Показать сигнатуры инструментов для сервера |
| Обновить соединение и повторно обнаружить инструменты |
| Запустить сервер шлюза |
Code Mode
При подключении шлюз предоставляет 4 мета-инструмента:
Инструмент | Описание |
| Список всех доступных |
| Чтение сигнатур функций из заглушки |
| Получение подробной документации для инструмента |
| Выполнение кода в изолированном интерпретаторе Starlark |
OAuth-аутентификация
Для серверов, требующих OAuth (например, Supabase):
# Trigger OAuth flow
mcp-gway refresh supabase --auth
# Or store token manually
mkdir -p ~/.config/mcp-gway/tokens
echo '{"access_token": "YOUR_TOKEN"}' > ~/.config/mcp-gway/tokens/supabase.jsonРазработка
# Install dependencies
mise install
uv sync
# Run tests
uv run pytest -v
# Lint and format
uv run ruff check src/ tests/
uv run ruff format src/ tests/Архитектура
┌─────────────────────────────────────────────────────────┐
│ MCP Gateway │
├─────────────────────────────────────────────────────────┤
│ CLI (click) │ HTTP/SSE Server (Starlette) │
│ - add │ - POST /mcp (JSON-RPC) │
│ - remove │ - GET /mcp (SSE stream) │
│ - list │ - POST /mcp/messages │
│ - refresh │ │
├─────────────────────────────────────────────────────────┤
│ Code Mode (4 meta-tools) │ Starlark Sandbox │
│ - listToolFiles │ - Hermetic execution │
│ - readToolFile │ - Server injection │
│ - getToolDocs │ │
│ - executeToolCode │ │
├─────────────────────────────────────────────────────────┤
│ Registry (.pyi files) │ OAuth2 (RFC 7591) │
│ - servers/*.pyi │ - Dynamic registration│
│ - Tool signatures │ - Token storage │
└─────────────────────────────────────────────────────────┘
│ │ │
┌────┴────┐ ┌────┴────┐ ┌────┴────┐
│ Server1 │ │ Server2 │ │ Server3 │
│ (HTTP) │ │ (SSE) │ │ (Stdio) │
└─────────┘ └─────────┘ └─────────┘Лицензия
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Self-hosted federated MCP gateway: one OAuth 2.1 MCP server in front of N apps, user-level scopes.
Governed MCP gateway: one endpoint for your tools, with credential custody and audit log.
Hosted MCP server with managed OAuth for 15+ toolkits: Google Workspace, Fitbit, Oura, Kalshi, etc.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAggregates multiple MCP servers into a single endpoint, enabling LLM clients to access tools, resources, and prompts from various backends through one connection.9 npmMIT
- AlicenseBqualityCmaintenanceAggregates multiple MCP servers via a single interface with token optimization and multiple operating modes (Gateway, Meta, Proxy, Search, Code).78MIT
- AlicenseNot gradedqualityAmaintenanceCentralizes management and routing of multiple MCP servers, exposing them to AI clients via HTTP/SSE endpoints with configurable visibility, sharing, and smart routing.1,706 npmApache 2.0
- AlicenseNot gradedqualityBmaintenanceCentralized management and routing of multiple MCP servers via unified Streamable HTTP/SSE endpoints, with granular group visibility, smart routing, and authentication.1,706 npmApache 2.0