Claude Code
Две переменные окружения — и агент готов к работе:
bash
export ANTHROPIC_BASE_URL="https://api.modelproxy.org"
export ANTHROPIC_AUTH_TOKEN="mp-your-key"
claude
Claude Fable 5 — за 1 000 запросов × 20 000 входящих + 2 000 исходящих токенов: счёт в OpenRouter $300.00, счёт в ModelProxy $30.00, остаётся у вас $270.00.
Лучшие модели OpenAI, Anthropic и open-source по единому API-ключу.
claude-fable-5запросов: 1 000
Меняете base_url. Остальное делает ModelProxy.
Ваше приложение
POST /v1/chat/completions
model: "gpt-5.5"
authorization: mp-••••••••
ModelProxy
api.modelproxy.org/v1
Только base_url. Больше ничего.
from openai import OpenAI client = OpenAI( api_key="mp-your-key", base_url="https://api.modelproxy.org/v1") response = client.chat.completions.create( model="gpt-5.5", messages=[{"role": "user", "content": "Hello"}])print(response.choices[0].message.content)
import OpenAI from "openai"; const client = new OpenAI({ apiKey: "mp-your-key", baseURL: "https://api.modelproxy.org/v1"}); const response = await client.chat.completions.create({ model: "gpt-5.5", messages: [{ role: "user", content: "Hello" }]});console.log(response.choices[0].message.content);
curl https://api.modelproxy.org/v1/chat/completions \ -H "Authorization: Bearer mp-your-key" \ -H "Content-Type: application/json" \ -d '{"model":"gpt-5.5","messages":[{"role":"user","content":"Hello"}]}'
client := openai.NewClient( option.WithAPIKey("mp-your-key"), option.WithBaseURL("https://api.modelproxy.org/v1"),) resp, err := client.Chat.Completions.New(ctx, openai.ChatCompletionNewParams{ Model: "gpt-5.5", Messages: []openai.ChatCompletionMessageParamUnion{ openai.UserMessage("Hello"), },})
Claude Code
Две переменные окружения — и агент готов к работе:
bash
export ANTHROPIC_BASE_URL="https://api.modelproxy.org"
export ANTHROPIC_AUTH_TOKEN="mp-your-key"
claude
Codex CLI
Codex говорит с внешним провайдером через OpenAI Responses API — добавьте блок в ~/.codex/config.toml:
~/.codex/config.toml
model_provider = "modelproxy"
[model_providers.modelproxy]
name = "ModelProxy"
base_url = "https://api.modelproxy.org/v1"
env_key = "MODELPROXY_API_KEY"
wire_api = "responses"
Cursor
Редактор Cursor: ключ задаётся только в интерфейсе, Settings → Models, запросы идут через облако Cursor, а автодополнение остаётся на моделях Cursor. Чтобы они уходили в ModelProxy, нужна недокументированная настройка базового URL — обещать её работу мы не можем.
Cursor CLI: подключить нельзя. Флаг --endpoint задаёт адрес бэкенда Cursor, а не провайдера моделей.
Kilo Code
Провайдер типа «OpenAI Compatible» — в настройках расширения или файлом:
~/.config/kilo/kilo.jsonc
"apiKey": "{env:MODELPROXY_API_KEY}",
"baseURL": "https://api.modelproxy.org/v1"
Pi
Свой провайдер описывается в models.json:
~/.pi/agent/models.json
"baseUrl": "https://api.modelproxy.org/v1",
"api": "openai-completions",
"apiKey": "$MODELPROXY_API_KEY"
omp.sh
Агент omp («oh-my-pi») читает провайдеров из models.yml:
~/.omp/agent/models.yml
providers:
modelproxy:
baseUrl: https://api.modelproxy.org/v1
api: openai-completions
apiKey: MODELPROXY_API_KEY
Hermes Agent
Hermes принимает оба протокола; ключ берётся из переменной окружения:
~/.hermes/config.yaml
providers:
modelproxy:
api: https://api.modelproxy.org/v1
key_env: MODELPROXY_API_KEY
transport: chat_completions
OpenClaw
Провайдер добавляется в конфигурацию шлюза; модель нужно перечислить явно:
~/.openclaw/openclaw.json
baseUrl: "https://api.modelproxy.org/v1",
apiKey: "${MODELPROXY_API_KEY}",
api: "openai-completions"
Токены × цена из прайса. Вход и выход отдельно, каждый округляется вверх до копейки.
Храним только метаданные: модель, токены, стоимость, статус, латентность. Ни запросов, ни ответов.
Все из прайса, включая прошлые поколения. Полный список в документации, обновляется автоматически.
Да. Укажите base_url="https://api.modelproxy.org/v1". И всё.
Да. Claude Code: две переменные окружения. Codex CLI: блок провайдера в ~/.codex/config.toml.
Стриминг, вызов инструментов, структурированный вывод, изображения, рассуждения, кэширование промптов, системные сообщения.
Создайте API-ключ, выберите модель и отправьте первый запрос.