Deepseek ArtifactsDeepseek Artifacts
Гайд по MCP в Codex

MCP-серверы в Codex CLI: добавляем, настраиваем, авторизуем

MCP-серверы выдают Codex новые инструменты — актуальную документацию, вашу базу данных, ваши GitHub-репозитории. В этом разборе мы добавляем локальный stdio-сервер через codex mcp add, переключаемся на удаленный с --url и OAuth, смотрим записи config.toml за обоими и показываем проверки, доказывающие, что сервер действительно работает.

Коротко

  • Codex читает MCP-серверы из ~/.codex/config.toml (глобально) или .codex/config.toml (проект). Каждая запись — таблица [mcp_servers.<name>] с command/args для локальных stdio-серверов или url для удаленных.
  • codex mcp add context7 -- npx -y @upstash/context7-mcp ставит stdio-сервер без правки файла; codex mcp add <name> --url https://mcp.example.com/mcp регистрирует удаленный.
  • Удаленные серверы авторизуются в браузере при первом подключении (Codex печатает Detected OAuth support и открывает экран согласия) или позже через codex mcp login <name>.
  • Проверяйте через /mcp внутри TUI или codex mcp list в шелле. Codex 0.160.1 дополнительно сохраняет SYSTEMROOT, TEMP и TMP при запуске удаленных stdio-серверов с удаленными переменными окружения.

OpenAI Codex + MCP: How to Install MCP Servers in Codex (Step by Step)

Канал: Nathan Sebhastian8:48

Смотреть

OpenAI Codex Tutorial #9 - MCP Servers

Канал: Net Ninja6:46

Смотреть

How to Add MCP Servers to OpenAI Codex CLI

Канал: Snyk9:14

Смотреть

Connect Codex to an MCP server — official documentation

Официальная документация: developers.openai.com/codex

Смотреть

Каждая команда, путь к файлу и ключ конфигурации на этой странице сверены с официальной документацией Codex MCP; видео выше — визуальные и фактические источники, включая экраны согласия OAuth и меню MCP в десктоп-приложении.

Скриншоты принадлежат их авторам и снабжены прямыми ссылками на точные таймкоды. Кадры с лицами не используются.

Добавляем MCP-серверы в Codex, шаг за шагом

Часть 1 — Ваш первый stdio-сервер

  1. 1

    Выберите сервер в официальной документации MCP

    Откройте developers.openai.com/codex/mcp — в собственной документации Codex лежит актуальный синтаксис команд, и CLI и IDE-расширение разделяют эту конфигурацию. В документах перечислены готовые серверы, с которых стоит начать: Context7 для живой документации библиотек, Figma, GitHub и другие. MCP-серверов сотни; для первого теста берите что-то read-only вроде Context7.

    OpenAI Codex MCP documentation page with the codex mcp add command syntax and the Context7 example highlighted under Add an MCP server
    Официальная страница Connect Codex to an MCP server: синтаксис codex mcp add и готовый к копированию пример с Context7.Смотреть на 0:20
  2. 2

    Установите через codex mcp add

    Скопируйте пример и выполните в терминале: codex mcp add context7 -- npx -y @upstash/context7-mcp. Все после двойного тире — команда, запускающая процесс сервера. Codex ответит «Added global MCP server 'context7'» — global значит, что запись легла в конфиг уровня пользователя и доступна в каждом проекте.

    Terminal printing Added global MCP server 'context7' after codex mcp add context7 -- npx -y @upstash/context7-mcp
    Одна команда без правки файлов: CLI подтверждает добавление сервера в глобальный конфиг.Смотреть на 0:45
  3. 3

    Посмотрите, что CLI записал в config.toml

    codex mcp add — просто генератор для ~/.codex/config.toml. Откройте файл и найдете [mcp_servers.context7] с command = "npx" и args = ["-y", "@upstash/context7-mcp"]. Записи можно править и руками: добавить таблицу env для API-ключей или выставить startup_timeout_sec (по умолчанию 10) и tool_timeout_sec (по умолчанию 60) для медленных серверов. Ручная правка — ровно тот путь, которым идут видео Snyk и Net Ninja в карточке источников.

  4. 4

    Запустите Codex и проверьте через /mcp

    Стартуйте codex в проекте и введите /mcp. Панель MCP Tools перечисляет все настроенные серверы со статусом, точной командой запуска и доступными инструментами — у Context7 это query_docs и resolve-library-id. Чего-то не хватает — запись легла не в тот файл или сервер не стартовал.

    OpenAI Codex terminal with the /mcp panel listing context7 as enabled and its two MCP tools query_docs and resolve-library-id
    Панель /mcp внутри TUI Codex: context7 включен, оба инструмента перечислены поименно.Смотреть на 1:05

Часть 2 — Пользуемся, потом уходим в remote

  1. 5

    Сформулируйте промпт, который реально задействует сервер

    Инструменты MCP вызываются по потребности, так что просите то, что без них не обойдется: «Проверь через Context7 актуальную документацию по настройке Tailwind CSS». Codex найдет библиотеку, вытащит доки через MCP-сервер и процитирует источники в ответе. Прокручивающиеся вызовы инструментов — доказательство, что сервер работает от начала до конца.

    Codex answer citing Sources (Context7) links after pulling the current Tailwind CSS v4 setup docs through the MCP server
    В ответе Codex процитированы точные URL документации Context7, вытащенные через MCP-сервер.Смотреть на 1:30
  2. 6

    Добавьте удаленный сервер с --url

    Многие провайдеры также хостят свой MCP-сервер удаленно — без локального процесса и без npx. Зарегистрируйте: codex mcp add context7 --url https://mcp.context7.com/mcp. Codex автоматически распознает поддержку OAuth, напечатает «Detected OAuth support. Starting OAuth flow...» и откроет браузер для авторизации. В config.toml запись — просто url = "https://mcp.context7.com/mcp" под [mcp_servers.context7].

    Terminal running codex mcp add context7 --url https://mcp.context7.com/mcp with Detected OAuth support, the authorize URL, and Successfully logged in output
    Весь удаленный сценарий в одном терминале: add с --url, распознавание OAuth, ссылка авторизации и Successfully logged in.Смотреть на 2:22
  3. 7

    Одобрите экран согласия OAuth

    Браузер спросит, может ли Codex доступаться к вашему аккаунту от имени провайдера. Просмотрите запрошенные scope, нажмите Allow — терминал подтвердит «Successfully logged in». Для серверов без OAuth-флоу авторизуйтесь отдельно через codex mcp login <name>; серверы с токенами принимают bearer_token_env_var со ссылкой на переменную окружения.

    Browser consent screen asking to authorize Codex to access your Context7 account with an Allow button for the MCP OAuth flow
    Экран согласия Context7: просмотрите scope, которые запрашивает Codex, и нажмите Allow.Смотреть на 2:02
  4. 8

    Ограничьте сервер одним проектом через .codex/config.toml

    Серверы, осмысленные только в одном репозитории — как DBHub, stdio-сервер для вашей базы данных, — живут в конфиге проекта. Создайте в репозитории папку .codex, добавьте config.toml с записью [mcp_servers.dbhub] и передайте строку подключения через аргумент --dsn (подстройте пример Postgres из документации под MySQL или что у вас). Закоммитьте — и коллеги получат тот же сервер; папка должна быть доверенным проектом, чтобы конфиг загрузился.

    VS Code editor showing a project .codex/config.toml with an mcp_servers.dbhub entry running @bytebase/dbhub over stdio against a postgres DSN
    Проектный .codex/config.toml: DBHub работает по stdio с DSN базы репозитория в args.Смотреть на 3:30

Часть 3 — Настоящие серверы и управление со второго дня

  1. 9

    Опрашивайте базу данных через MCP-инструменты

    С настроенным DBHub спросите Codex о базе: «Найди базу Petco и объясни таблицы», затем «Какой продукт самый продаваемый?». Codex вызовет инструменты сервера describe_table и execute_sql, спросит разрешение перед выполнением SQL и ответит реальными цифрами из ваших данных. Это самый быстрый способ отлаживать схемы и проверять данные при работе над бэкендом.

    Codex terminal calling the dbhub execute_sql MCP tool to rank best-selling products in a Petco sample database and reporting Premium Dog Kibble with 7 units sold
    Codex вызвал инструмент execute_sql у dbhub и ответил самым продаваемым товаром и его выручкой.Смотреть на 4:40
  2. 10

    Подключите GitHub через его удаленный MCP-сервер

    README github/github-mcp-server описывает настройку для Codex: добавьте запись [mcp_servers.github] с url = "https://api.githubcopilot.com/mcp/" и авторизуйтесь через OAuth либо экспортируйте personal access token как переменную окружения (создайте fine-grained PAT в GitHub Settings, Developer settings, выдав Administration и Contents). Remote-first серверы — этот и Figma MCP — следуют той же схеме, что и шаг 6.

    GitHub github-mcp-server README installation guide with the Codex CLI entry and a note that remote MCP servers support OAuth or PAT authentication
    Инструкция по установке MCP-сервера GitHub: запись для Codex CLI плюс заметка об аутентификации OAuth/PAT.Смотреть на 5:22
  3. 11

    Перезапустите и дайте инструментам работу

    Перезапустите codex и следите за баннером: «Starting servers (0/3): context7, dbhub, github». Теперь одной инструкции — «форкни репозиторий openai/codex на мой аккаунт» — достаточно: Codex выберет инструмент fork у GitHub, спросит одобрение и выполнит. Никаких настроек под задачу: инструменты просто часть каждой сессии с этого момента.

  4. 12

    Управляйте серверами через codex mcp list и десктоп-приложение

    codex mcp list печатает все настроенные серверы прямо из шелла; удаление — убрать блок из config.toml и перезапустить команду для проверки. Десктоп-приложение и IDE-расширение читают тот же ~/.codex/config.toml, поэтому установленные здесь серверы появляются на странице Settings, MCP servers десктоп-приложения с переключателями вкл/выкл.

    Codex desktop app MCP servers settings page with context7, dbhub and github custom server toggles above recommended servers from Linear, Notion and Figma
    Настройки MCP servers в десктоп-приложении Codex: context7, dbhub и github с тумблерами плюс рекомендованные серверы.Смотреть на 7:30

Локальный stdio vs удаленные MCP-серверы в Codex

Оба типа живут в одних и тех же таблицах [mcp_servers.*] и видны в одной панели /mcp — разница в том, где работает сервер и как авторизуется. Выбирайте на сервер, а не на проект.

  • 1Локальный stdio: Codex сам запускает процесс с command и args — обычно npx или бинарник. Он работает на вашей машине, поэтому достает сервисы localhost вроде базы разработки (именно так DBHub опрашивал MySQL в разборе), но runtime и обновления обеспечиваете вы.
  • 2Удаленный: Codex общается с хостинговым url по streamable HTTP. Процесс поддерживать не нужно, авторизация централизована — OAuth по умолчанию либо bearer_token_env_var и http_headers для токеновых схем. Собственный пример документации — [mcp_servers.figma] с url = "https://mcp.figma.com/mcp".
  • 3Удаленно исполняемый stdio: экспериментальная середина. experimental_environment = "remote" на stdio-записи переносит ее исполнение на удаленный executor, а env_vars решает, какие переменные отправляются — включая записи с пометкой source = "remote". Именно этот путь укрепил Codex 0.160.1.
  • 4Scope: codex mcp add всегда пишет в глобальный ~/.codex/config.toml; серверы конкретного проекта кладут в .codex/config.toml внутри репозитория (только доверенные проекты). Глобально — инструменты, нужные везде; в проект — все, что несет окруженческие креды.
  • 5Управление для обоих типов: startup_timeout_sec (по умолчанию 10) и tool_timeout_sec (по умолчанию 60) для медленных серверов, enabled/disabled_tools, чтобы разрешить список вызываемого, и required = true, если сервер обязан подняться, иначе Codex не стартует.

Практичный дефолт: read-only серверы документации вроде Context7 могут быть глобальными; все, что трогает креды или данные — DBHub, GitHub с PAT, — живет в конфиге проекта, где просматривается и отзывается вместе с репозиторием.

Настроено, но не работает: обычные подозреваемые

Большинство MCP-сбоев в Codex — это scope, таймаут или авторизация — именно в таком порядке. Пройдите список, прежде чем лезть в сам сервер.

  • 1Сервера нет в /mcp: проверьте, какой файл вы правили. Глобальные записи живут в ~/.codex/config.toml; проектные — в .codex/config.toml и только для доверенных проектов. codex mcp list из шелла покажет, что Codex реально видит.
  • 2Сервер падает по таймауту на старте: дефолтный startup_timeout_sec — 10 секунд, а холодная загрузка npx большого пакета легко выйдет за этот лимит. Преустановите пакет или поднимите startup_timeout_sec у записи.
  • 3Вызовы инструментов падают с 401/403: креды отсутствуют или устарели. Выполните codex mcp login <name> для OAuth-серверов или задайте bearer_token_env_var и экспортируйте переменную. После починки /mcp снова покажет сервер как enabled.
  • 4Удаленный stdio-сервер падает со странными ошибками Windows: до 0.160.1 запуск удаленного stdio MCP-сервера с явно настроенными удаленными переменными окружения мог терять SYSTEMROOT, TEMP и TMP, ломая стартовое окружение Windows-executor. Обновитесь до 0.160.1 или новее.
  • 5Сервер стартует, но ответы неверные или пустые: многим хостинговым серверам нужен собственный API-ключ даже при OAuth — Context7, например, требует ключ через env. Посмотрите в документации провайдера точное имя env и добавьте его в таблицу env записи.

Две полезные ручки при отладке: required = true на сервере, от которого вы зависите, чтобы Codex никогда не стартовал молча без него, и enabled = false, чтобы выключить сервер, не удаляя конфиг.

FAQ

Похожие гайды