OpenAI Compatible Gateway
БесплатноНе проверенLocal MCP server that exposes fixed tools for GPT, Claude, and Gemini while routing to any OpenAI-compatible chat completions backend with independent configura
Описание
Local MCP server that exposes fixed tools for GPT, Claude, and Gemini while routing to any OpenAI-compatible chat completions backend with independent configuration per target.
README
Local Python MCP server that exposes fixed MCP tools for gpt, claude, and gemini, while still calling any OpenAI-style chat/completions backend underneath.
That means each target can be configured independently:
- its own API base URL
- its own API key or API key env var
- its own default model
- its own headers, query params, and endpoint paths
So if you want:
gpt-> OpenAI directlyclaude-> OpenRoutergemini-> Electron Hub
you can do that cleanly with one section per target.
Tools
The server exposes:
provider_statuslist_gpt_modelslist_claude_modelslist_gemini_modelschat_gptchat_claudechat_geminisimple_gpt_chatsimple_claude_chatsimple_gemini_chat
Configuration
By default the server reads config/providers.toml.
The repository only includes a safe example file at config/providers.example.toml.
Create your local config/providers.toml from that example and keep your real keys there.
Override the config path with:
$env:OPENAI_COMPAT_MCP_CONFIG="C:\path\to\providers.toml"
The file is intentionally fixed-shape. No arbitrary provider registry.
[server]
name = "OpenAI-Compatible MCP Gateway"
timeout_seconds = 60
[gpt]
base_url = "https://api.openai.com/v1"
api_key_env = "OPENAI_API_KEY"
model = "gpt-4.1-mini"
[claude]
base_url = "https://api.anthropic.com/v1/openai"
api_key_env = "ANTHROPIC_API_KEY"
model = "claude-sonnet-4-5"
[gemini]
base_url = "https://generativelanguage.googleapis.com/v1beta/openai"
api_key_env = "GEMINI_API_KEY"
model = "gemini-2.5-flash"
Bootstrap your local config with:
Copy-Item config\\providers.example.toml config\\providers.toml
Each of gpt, claude, and gemini supports:
base_urlmodelapi_key_envapi_keychat_completions_pathmodels_pathapi_key_headerapi_key_prefixapi_key_query_nameheadersquerydefault_bodytimeout_secondsenabled
Example alternate routing
If you want all three targets to go through OpenRouter or another OpenAI-compatible hub, keep the sections separate and just point them to different models:
[gpt]
base_url = "https://openrouter.ai/api/v1"
api_key_env = "OPENROUTER_API_KEY"
model = "openai/gpt-4.1-mini"
headers = { "HTTP-Referer" = "https://example.com", "X-Title" = "Local MCP Gateway" }
[claude]
base_url = "https://openrouter.ai/api/v1"
api_key_env = "OPENROUTER_API_KEY"
model = "anthropic/claude-sonnet-4"
headers = { "HTTP-Referer" = "https://example.com", "X-Title" = "Local MCP Gateway" }
[gemini]
base_url = "https://openrouter.ai/api/v1"
api_key_env = "OPENROUTER_API_KEY"
model = "google/gemini-2.5-flash"
headers = { "HTTP-Referer" = "https://example.com", "X-Title" = "Local MCP Gateway" }
Install
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install -e .[dev]
Run
For stdio MCP:
openai-compat-mcp
For streamable HTTP:
$env:OPENAI_COMPAT_MCP_TRANSPORT="streamable-http"
openai-compat-mcp
Optional Remote Bearer Auth
If you expose the server over HTTP, you can require an app-level bearer token.
Set:
$env:OPENAI_COMPAT_MCP_BEARER_TOKEN="replace-this-with-a-long-random-token"
Optional but recommended for remote/public-facing setups:
$env:OPENAI_COMPAT_MCP_PUBLIC_BASE_URL="https://your-domain.example.com"
Behavior:
stdiomode is unaffected- HTTP MCP requests must send
Authorization: Bearer <your-token> provider_statusreports whether remote bearer auth is enabled
Example MCP client config
{
"mcpServers": {
"openai-compat-gateway": {
"command": "C:\\Users\\anuji\\Documents\\codex\\.venv\\Scripts\\openai-compat-mcp.exe",
"env": {
"OPENAI_COMPAT_MCP_CONFIG": "C:\\Users\\anuji\\Documents\\codex\\config\\providers.toml",
"OPENAI_API_KEY": "sk-...",
"ANTHROPIC_API_KEY": "sk-ant-...",
"GEMINI_API_KEY": "..."
}
}
}
}
Notes
- The gateway uses direct HTTP requests, not vendor SDKs.
- Requests are non-streaming
chat/completions. list_*_modelsdepends on the configured backend exposingGET /models.
Установка OpenAI Compatible Gateway
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/Deathwalker-47/openai-compat-mcpFAQ
OpenAI Compatible Gateway MCP бесплатный?
Да, OpenAI Compatible Gateway MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для OpenAI Compatible Gateway?
Нет, OpenAI Compatible Gateway работает без API-ключей и переменных окружения.
OpenAI Compatible Gateway — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить OpenAI Compatible Gateway в Claude Desktop, Claude Code или Cursor?
Открой OpenAI Compatible Gateway на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Gmail
Read, send and search emails from Claude
автор: GoogleSlack
Send, search and summarize Slack messages
автор: SlackRunbear
No-code MCP client for team chat platforms, such as Slack, Microsoft Teams, and Discord.
Discord Server
A community discord server dedicated to MCP by [Frank Fiegel](https://github.com/punkpeye)
Compare OpenAI Compatible Gateway with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории communication
