MCP-сервер
У API Hubs есть удалённый сервер Model Context Protocol. Подключите к нему AI-агента, и он сможет смотреть модели и цены, создавать генерации с вашего баланса и забирать результаты — без API-ключа в своих настройках. Вы один раз входите в аккаунт в браузере и подтверждаете доступ клиенту.
https://api.apihubs.ru/mcpПодключение Claude Code
claude mcp add --transport http apihubs https://api.apihubs.ru/mcpЗатем введите /mcp в Claude Code, выберите apihubs и пройдите
авторизацию. Откроется окно браузера: войдите в аккаунт, проверьте, какие права
запрашивает клиент, и нажмите Разрешить. Claude Code сохранит токен и будет
обновлять его сам.
Проверьте подключение запросом:
Покажи видеомодели API Hubs и сколько стоит 5-секундный ролик на каждой.Подключение Codex
Codex CLI и его расширение для IDE используют общую конфигурацию MCP. Добавьте сервер по адресу Streamable HTTP:
codex mcp add apihubs --url https://api.apihubs.ru/mcpЕсли при добавлении сервера началась авторизация в браузере, войдите в аккаунт и подтвердите доступ. Иначе запустите авторизацию отдельно:
codex mcp login apihubsПосле настройки перезапустите Codex или перезагрузите расширение IDE. В
терминальном интерфейсе Codex введите /mcp, чтобы проверить подключение,
затем попросите вызвать list_models и get_account.
Вместо команды добавления можно записать сервер в ~/.codex/config.toml,
после чего выполнить команду login:
[mcp_servers.apihubs]
url = "https://api.apihubs.ru/mcp"API-ключ, секрет клиента и ручное копирование токена не нужны. Сервер поддерживает динамическую регистрацию OAuth: Codex регистрируется сам и сохраняет учётные данные. Подробнее — в документации Codex MCP.
Подключение к API Hubs
У API Hubs свой адрес MCP и вход в браузере на apihubs.ru:
codex mcp add apihubs --url https://api.apihubs.ru/mcp
codex mcp login apihubsДля Claude Code:
claude mcp add --transport http apihubs https://api.apihubs.ru/mcpИспользуйте адрес той витрины, на которой входите в аккаунт. Токен одной витрины не работает на другой.
Локальная проверка
Запустите API в режиме development на порту 5000 и витрину на порту 3000,
указав для неё SERVER_INTERNAL_URL=http://127.0.0.1:5000. Оба процесса,
Codex и браузер должны работать на одной машине. Локальный OAuth discovery
ожидает витрину на порту 3000.
Для API Hubs откройте http://localhost:3000 и подключите сервер:
codex mcp add apihubs-local --url http://localhost:5000/mcp
codex mcp login apihubs-localДля API Hubs откройте http://apihubs.localhost:3000 и подключите сервер:
codex mcp add apihubs-local --url http://apihubs.localhost:5000/mcp
codex mcp login apihubs-localЕсли apihubs.localhost не разрешается, добавьте в hosts строку
127.0.0.1 apihubs.localhost. Войдите в локальный аккаунт и подтвердите
доступ. Вызовы list_models и get_account проверяют подключение без
списаний. Команды в карточке коннекторов показывают production-адрес;
для этой проверки используйте локальные команды выше.
Другие клиенты
Тот же адрес подходит другим клиентам, которые поддерживают удалённые MCP-серверы по Streamable HTTP с OAuth. Клиент сам находит сервер авторизации, регистрируется и открывает браузер; заранее создавать что-либо в кабинете не нужно.
Сервер поддерживает Client ID Metadata Documents (CIMD) и динамическую регистрацию OAuth-клиентов (DCR). Клиент может использовать HTTPS-адрес документа с метаданными либо зарегистрироваться через DCR.
При DCR адрес возврата должен быть локальным или использовать https. Cursor пока
не подключается: он использует адрес возврата с собственной схемой, который
сервер авторизации не принимает.
Примечание: сервер принимает только токены OAuth. API-ключ в заголовке
Authorizationна/mcpне подходит — ключ по-прежнему используется для HTTP API.
Инструменты
| Инструмент | Что делает | Право |
|---|---|---|
list_models | Модели видео, изображений и музыки с ценой «от». | чтение |
get_model | Параметры, таблица цен и пример запроса для одной модели. | чтение |
estimate_cost | Точная цена запроса. Ничего не создаётся и не списывается. | чтение |
create_generation | Запускает генерацию и возвращает taskId. Списывает с баланса. | генерация |
create_upload_url | Подписанная PUT-ссылка для локального файла и его публичный URL. | генерация |
get_task | Статус задачи и ссылки на файлы, когда она завершена. | чтение |
list_generations | Ваши последние генерации, сначала новые. | чтение |
get_account | Баланс и ссылка на пополнение. | чтение |
Генерация асинхронная, как и в HTTP API: create_generation отвечает сразу, а
результат появляется позже. У get_task есть параметр waitSeconds (до 30),
чтобы агент дождался результата, а не опрашивал статус в цикле. Входные
изображения, видео и аудио передаются публичными ссылками.
Для локального файла вызовите create_upload_url с точным размером
contentLength в байтах и MIME-типом contentType. Загрузите байты файла
методом PUT по возвращённому uploadUrl, передав возвращённые заголовки.
После успешной загрузки используйте publicUrl как входной URL модели.
Агенту нужен инструмент HTTP-загрузки наряду с MCP.
Размер файла — от 1 байта до 25 МиБ. Допустимые MIME-типы: image/png,
image/jpeg, image/webp, video/mp4, video/quicktime, video/webm,
audio/mpeg, audio/wav, audio/mp4. Ссылка действует 10 минут. Загрузка
бесплатна и требует положительного баланса; пользователь может запросить
не более 20 ссылок в минуту суммарно через все свои MCP-клиенты.
create_generation принимает те же model и input, что и
POST /generation/create, и два необязательных ограничителя:
| Поле | Значение |
|---|---|
maxCostUsd | Отклонить запрос, если он стоит дороже указанной суммы. |
idempotencyKey | Повторный вызов с тем же ключом и тем же запросом вернёт ту же задачу, а не спишет деньги второй раз. |
Права
Клиент запрашивает права при подключении, и экран согласия их перечисляет:
| Право | Что разрешает клиенту |
|---|---|
mcp:read | Видеть модели, цены, ваши генерации и баланс. |
mcp:generate | Создавать генерации. Это тратит ваш баланс. |
offline_access | Оставаться подключённым, не запрашивая вход заново. |
Клиент, которому дали только mcp:read, создавать генерации не может: при
попытке его попросят авторизоваться заново.
mcp:generate также разрешает создавать ссылки для загрузки входных файлов.
Отключение клиента
Откройте Кабинет → Коннекторы. Там перечислены все подключённые клиенты с датой подключения; Отключить действует сразу, в том числе для уже открытой сессии клиента.
Смена или сброс пароля также отключает все MCP-клиенты на обеих витринах. Чтобы продолжить, подключите клиент заново и подтвердите доступ.
Стоимость и ошибки
Генерация через MCP стоит ровно столько же, сколько тот же запрос через HTTP API, и списывается с того же предоплаченного баланса. За неудачную генерацию деньги возвращаются автоматически. Если баланса не хватает, инструмент отвечает ошибкой со ссылкой на страницу оплаты.