Nexus — шлюз MCP-серверов и LLM-провайдеров

Nexus

Шлюз на Rust подключает MCP-серверы и LLM-провайдеров за одним адресом и добавляет авторизацию, лимиты и поиск инструментов

  • 436 ★ репозитория
  • Последний коммит
  • MPL-2.0
MCP-сервер

Широкий доступ

Почему такой уровень

  • Шлюз хранит ключи LLM-провайдеров и токены MCP-серверов и пропускает через себя все вызовы инструментов агентов
  • Серверы STDIO из конфигурации запускаются как дочерние процессы с произвольной командой `cmd`, переменными окружения и рабочим каталогом
  • Без OAuth2 шлюз принимает любую строку вместо ключа, поэтому порт нужно держать закрытым: по умолчанию он слушает 127.0.0.1:8000
Все причины и проверки

nexus-router/nexus

Установка

Ручная установка

curl -fsSL https://nexusrouter.com/install | bash

Установка бинарника на Linux, macOS и Windows через WSL. Запускает шлюз команда `nexus` с файлом `nexus.toml`.

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Шлюз хранит ключи LLM-провайдеров и токены MCP-серверов и пропускает через себя все вызовы инструментов агентов
  • Серверы STDIO из конфигурации запускаются как дочерние процессы с произвольной командой `cmd`, переменными окружения и рабочим каталогом
  • Без OAuth2 шлюз принимает любую строку вместо ключа, поэтому порт нужно держать закрытым: по умолчанию он слушает 127.0.0.1:8000

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Nexus — сервер на Rust, который стоит между агентом и вашими MCP-серверами и LLM-провайдерами. Агент подключается к одному адресу `/mcp`, а Nexus обращается к подключенным серверам по STDIO, SSE или потоковому HTTP и собирает их инструменты в общий список. Агент видит два инструмента. `search` ищет подходящие инструменты по запросу на естественном языке с нечетким совпадением, `execute` вызывает выбранный. Имена получают префикс сервера, например `github__search_code` и `filesystem__read_file`. Для моделей Nexus дает единую точку входа в формате OpenAI по пути `/llm/openai`, путь `/llm/anthropic` включается по желанию. Запросы маршрутизируются по имени модели и переводятся в формат OpenAI, Anthropic, Google или AWS Bedrock. Все настраивается в файле `nexus.toml`: доступ по группам, OAuth2, лимиты запросов в памяти или в Redis, TLS и телеметрия OTLP.

Для кого. Для команд и разработчиков, которые держат несколько MCP-серверов и LLM-провайдеров и хотят пускать агентов через один защищенный адрес с общими правилами доступа.

Подходит, если

  • Подключено много MCP-серверов, и список их инструментов раздувает контекст агента
  • Нужен один адрес для Claude Code, Cursor и Codex CLI без отдельной настройки каждого сервера
  • Нужно ограничить, какие группы пользователей видят платные или опасные инструменты MCP
  • Требуются лимиты запросов на пользователя, на IP, на MCP-сервер или на модель с хранением в Redis
  • Модели OpenAI, Anthropic, Google и Bedrock нужно вызывать через одну конечную точку в формате OpenAI

Не подходит, если

  • Достаточно одного или двух MCP-серверов: прямое подключение проще, чем отдельный сервис
  • Нужен облачный сервис без собственного хостинга: Nexus ставят и запускают сами
  • Нужен графический интерфейс управления: настройка идет в файле `nexus.toml`

Пример запроса к агенту

Найди среди подключенных инструментов тот, что ищет код на GitHub, и вызови его для запроса про обработку ошибок в Axios

MCP

Транспорт
http
Авторизация
не нужна

Переменные окружения

OPENAI_API_KEY секрет
Ключ OpenAI для блока провайдера в nexus.toml. Нужен, только если провайдер подключен.
ANTHROPIC_API_KEY секрет
Ключ Anthropic для блока провайдера в nexus.toml. Нужен, только если провайдер подключен.

Ограничения

Для MCP поддерживается только вставка статических заголовков и только для серверов по HTTP: заголовки входящих запросов не пересылаются, на STDIO-серверы правило не действует. Ключи подставляются из переменных окружения записью `{{ env.ИМЯ }}`.

Если при запуске не удалось получить список моделей хотя бы у одного провайдера, Nexus завершается, чтобы вы исправили конфигурацию. При включенном OAuth2 клиентам нужен токен JWT, а передачу токена на нижестоящие серверы включают настройкой `forward`, когда все они используют один сервер авторизации. Лимиты по группам требуют идентификации клиента.

OpenAI и Anthropic подключаются как провайдеры со своими ключами, и их API из России недоступен. Образ Docker публикуется с тегами `latest`, `stable` и конкретной версии.

Как отключить. Остановите процесс `nexus` или контейнер и удалите сервер из конфигурации клиента: в Claude Code это `claude mcp remove nexus`. Файл `nexus.toml` с ключами хранится отдельно, удалите его, если шлюз больше не нужен.

Частые вопросы

Как подключить Nexus к Claude Code?

Запустите Nexus, затем выполните `claude mcp add --transport http nexus http://localhost:8000/mcp` или добавьте тот же адрес в `.mcp.json` проекта. Проверка: `claude mcp list`. Шлюз должен работать до старта Claude Code.

Что делают инструменты search и execute?

`search` находит нужные инструменты среди всех подключенных MCP-серверов по запросу на естественном языке и возвращает имена, описания и параметры. `execute` вызывает выбранный инструмент с этими параметрами.

Как добавить MCP-сервер в Nexus?

В `nexus.toml` опишите блок `[mcp.servers.имя]`. Для локального процесса задайте `cmd`, например запуск `npx` с файловым сервером, для удаленного укажите `url` и при необходимости `protocol`. Без протокола Nexus сначала пробует потоковый HTTP, затем SSE.

Как направить Codex CLI через Nexus?

В `~/.codex/config.toml` добавьте провайдера `nexus` с `base_url = "http://127.0.0.1:8000/llm/openai/v1"`. Суффикс `/v1` обязателен. Запуск: `codex -c model="anthropic/claude-3-5-haiku-latest" -c model_provider=nexus`.

Как закрыть Nexus от посторонних?

Включите блок `[server.oauth]` с адресом JWKS: тогда все пути кроме `/health` и `/.well-known/oauth-protected-resource` требуют токен JWT. Дополнительно задают группы с `allow` и `deny` для серверов и инструментов и лимиты запросов.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы

Agentgateway

agentgateway

Официальный

Прокси для агентного трафика: маршрутизирует и защищает подключения к MCP-серверам, LLM и другим агентам через A2A

MCP-серверШирокий доступ5,8 тыс.Звезды репозитория

MCP-сервер по ресурсам NixOS: поиск пакетов и опций, чтобы агент не выдумывал названия и настройки

MCP-серверРасширенный доступ867Звезды репозитория

Шлюз и реестр от IBM: объединяет MCP-серверы, A2A-агентов и REST или gRPC API в одну точку с авторизацией и наблюдаемостью

MCP-серверШирокий доступ4,7 тыс.Звезды репозитория

Менеджер MCP-серверов на Node.js: запускает локальные и подключает удаленные серверы и отдает их клиенту одним адресом с REST API для управления

MCP-серверШирокий доступ524Звезды репозитория
Российский стек

Инфраструктура для 1С-разработчика: статический граф вызовов кода, база решений в формате RAG с жизненным циклом и мосты к внешним MCP

MCP-серверРасширенный доступ

Сенсор качества кода на Rust: считает сигнал качества до и после сессии агента, подключается как плагин Claude Code или MCP

CLIРасширенный доступ3,3 тыс.Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
Nexus — шлюз MCP-серверов и LLM-провайдеров (эта запись)нетне нужна436
Docker MCP Gatewayдане нужна1 616CLI-плагин docker mcp и шлюз: MCP-серверы из каталога Docker в изолированных контейнерах через одну точку подключения
ContextForgeнетAPI-ключ4 720шлюз и реестр от IBM, объединяющий MCP-серверы, A2A-агентов и REST или gRPC API с авторизацией
1MCP Agentнетне нужна525один сервер MCP вместо многих, отдает подключенные серверы клиенту через единый адрес

Коротко о README

Описание начинается с перечня возможностей и установки, затем подробно разбирает файл `nexus.toml`: типы MCP-серверов, авторизацию, правила доступа, лимиты, TLS, провайдеров моделей и телеметрию. В конце даны примеры подключения Cursor, Claude Code и Codex CLI и клиентские фрагменты на Python и JavaScript.

Бейдж для README

Сообщить о проблеме

Foxx AINexus — шлюз MCP-серверов и LLM-провайдеров
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.