pimenov.ai

База знаний

Context7 — актуальная документация библиотек для Codex и Claude Code

Context7 подтягивает актуальную документацию библиотек прямо в промпт. Разбираем подключение и примеры использования в Codex и Claude Code.

Опубликовано Обновлено

Context7 — это сервис от Upstash, который подтягивает свежую, версионную документацию библиотек и реальные примеры кода прямо в контекст вашего coding-агента. Решает базовую боль: модель помнит API годовой давности, придумывает несуществующие методы и выдаёт код под старые версии пакетов.

📌
Кому полезно: всем, кто пишет код с Codex или Claude Code и устал сверять ответы агента с актуальными доками вручную. Подключается за пару минут, дальше работает фоном.

Что это такое

Когда вы просите агента «сделай middleware на Next.js», он опирается на то, что запомнил при обучении. Между обучением и сегодняшним днём библиотека успела обновиться — отсюда устаревший код и галлюцинации API.

Context7 встаёт между агентом и документацией: по ходу запроса он находит нужную библиотеку, забирает из неё актуальные доки и примеры под конкретную версию и кладёт их в промпт. Никаких переключений на вкладку с документацией.

Работает в двух режимах — выбираете при установке:

  • CLI + Skills — ставится скилл, который сам подсказывает агенту забирать доки через команды ctx7. MCP при этом не нужен.
  • MCP — регистрируется MCP-сервер Context7, и агент вызывает инструменты документации нативно.
💡
MCP (Model Context Protocol) — открытый стандарт, по которому ИИ-агенты подключаются к внешним инструментам и данным. Context7 предоставляет MCP-сервер, к которому подключаются Codex, Claude Code и ещё три десятка клиентов.

Быстрый старт через CLI

Самый короткий путь — общий установщик ctx7. Он спрашивает целевого агента, проходит OAuth, генерирует API-ключ и ставит нужный скилл или MCP-режим. Нужен Node.js 18 или новее.

# Универсальная установка с выбором агента и режима
npx ctx7 setup

# Сразу под конкретного агента
npx ctx7 setup --claude
npx ctx7 setup --codex

Логин идёт через OAuth device flow: показывают ссылку и короткий код, который вы открываете на любом устройстве. Поэтому установка одинаково работает локально и на удалённом / headless / SSH-сервере.

Удалить настройку позже:

npx ctx7 remove
💡
API-ключ не обязателен — без него запросы идут по анонимному тарифу с низкими лимитами. Бесплатный ключ для повышенных лимитов берётся в личном кабинете на context7.com/dashboard.

Подключение в Codex

В Codex Context7 живёт как MCP-сервер. CLI, Desktop-приложение (macOS и Windows) и IDE-расширение читают одну и ту же конфигурацию из ~/.codex/config.toml.

Самый быстрый способ — одна команда npx ctx7 setup --codex: она проходит OAuth, генерирует ключ и прописывает Context7 в ~/.codex/config.toml и AGENTS.md. Ниже — ручные варианты, если нужен контроль над конфигом.

Вариант 1. Через терминал — самый простой:

codex mcp add context7 -- npx -y @upstash/context7-mcp --api-key ВАШ_API_КЛЮЧ

Вариант 2. Локальный npx-сервер в конфиге. Откройте ~/.codex/config.toml (для доверенного проекта можно положить рядом .codex/config.toml) и добавьте:

[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp", "--api-key", "ВАШ_API_КЛЮЧ"]
startup_timeout_ms = 20_000  # запас на первый запуск npx, иначе бывает таймаут

Вариант 3. Хостинговый сервер Upstash — если не хотите поднимать npx-процесс локально:

[mcp_servers.context7]
url = "https://mcp.context7.com/mcp"
http_headers = { "CONTEXT7_API_KEY" = "ВАШ_API_КЛЮЧ" }

В Codex Desktop то же самое включается из настроек MCP в самом приложении. Конфиг общий с CLI, так что добавленный сервер подхватывается автоматически.

⚠️
Таймаут или «program not found». Первый запуск MCP-сервера через npx иногда падает с ошибкой «request timed out» или «not found program». Поднимите startup_timeout_ms до 40_000 и повторите. На Windows дополнительно укажите в command абсолютный путь к npx.cmd и явно задайте переменные SystemRoot и APPDATAnpx их требует, но некоторые MCP-клиенты Codex не передают их по умолчанию.

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

codex plugin marketplace add upstash/context7
codex plugin add context7@context7-marketplace

После установки откроется браузер для входа через OAuth, запросы считаются по вашему тарифу. Запустите новый тред Codex, чтобы он подхватил скилл и инструменты плагина.

Правило, чтобы не писать «use context7» каждый раз

Чтобы Codex сам обращался к Context7 на вопросах про библиотеки, добавьте правило в AGENTS.md проекта:

Когда мне нужна документация библиотеки или API, генерация кода, шаги
настройки или конфигурации — всегда используй Context7, не дожидаясь
отдельной просьбы.

Подключение в Claude Code

У Claude Code два пути: лёгкий MCP-сервер и полноценный плагин со скиллами, агентами и командами.

Быстрая установка ставит скилл, который срабатывает автоматически:

npx ctx7 setup --claude

Только MCP-сервер вручную — если плагин не нужен:

# --scope user ставит для всех проектов; уберите его для текущего проекта
claude mcp add --scope user context7 -- npx -y @upstash/context7-mcp --api-key ВАШ_API_КЛЮЧ

Полный плагин Context7 добавляет поверх MCP-сервера скилл, агента docs-researcher и команду /context7:docs:

/plugin marketplace add upstash/context7
/plugin install context7@context7-marketplace

Чтобы запросы плагина считались по вашему тарифу, а не по анонимному, пропишите ключ в окружение перед запуском Claude Code:

# например, в ~/.zshrc или ~/.bashrc
export CONTEXT7_API_KEY="ваш-api-ключ"

Плагин читает CONTEXT7_API_KEY сам. После установки ключа перезапустите Claude Code.

Что входит в плагин

КомпонентЗачем нужен
MCP ServerСами инструменты: resolve-library-id и query-docs
SkillСам срабатывает на вопросах про библиотеки — «use context7» писать не нужно
Agent docs-researcherИщет доки в отдельном контексте и возвращает только ответ, не засоряя основной диалог
Команда /context7:docsРучной запрос документации, когда вы точно знаете библиотеку и тему

Правило для CLAUDE.md

Если ставили вручную без скилла, добавьте то же правило в CLAUDE.md:

Всегда используй Context7, когда мне нужна документация библиотеки/API,
генерация кода или шаги настройки — без отдельной просьбы.

Полезные примеры

Обычные промпты (Codex и Claude Code)

Достаточно дописать use context7 — агент сам найдёт библиотеку и подтянет доки:

Создай middleware для Next.js, который проверяет валидный JWT в куках
и редиректит неавторизованных на /login. use context7
Настрой Cloudflare Worker, который кэширует JSON-ответы API на пять минут. use context7
Покажи актуальный синтаксис Supabase для row-level security. use context7

Указываем версию

Достаточно упомянуть версию в запросе — Context7 подберёт доки именно под неё:

Как настроить middleware в Next.js 15? use context7

Указываем library ID напрямую

Если точно знаете библиотеку, передайте её Context7-ID в формате /org/project — агент пропустит шаг поиска и сразу заберёт доки:

Реализуй базовую аутентификацию в Supabase. use library /supabase/supabase for API and docs.
use context7 with /vercel/next.js for app router setup

Команда и агент в Claude Code

Ручной запрос документации через команду плагина:

/context7:docs react hooks
/context7:docs /supabase/supabase row level security

Когда диалог длинный и не хочется засорять контекст вызовами инструментов — отправьте поиск в отдельного агента:

spawn docs-researcher: как настроить Prisma с PostgreSQL?
spawn docs-researcher to find Tailwind CSS grid utilities

docs-researcher работает в своём контексте на более лёгкой модели (Sonnet) и возвращает в основной диалог только готовый ответ.

Команды CLI (режим без MCP)

Если вы выбрали режим CLI + Skills, агент забирает доки через ctx7:

# Найти библиотеку и её Context7-ID по имени
ctx7 library next.js "app router middleware"

# Забрать документацию по известному ID
ctx7 docs /vercel/next.js "app router middleware"

Когда агент vs инлайн-инструменты

В Claude Code есть выбор: тянуть доки прямо в диалог или через отдельного агента. Ориентир простой:

СитуацияЧто использовать
Глубоко в задаче, контекст уже длинныйАгент docs-researcher
Хочется не раздувать контекстАгент docs-researcher
Контекст короткийИнлайн-инструменты
Хочется видеть доки прямо в перепискеИнлайн-инструменты

Инструменты под капотом

Независимо от клиента Context7 предоставляет два MCP-инструмента:

  • resolve-library-id — превращает обычное имя библиотеки в Context7-совместимый ID. Принимает libraryName (что искать) и query (ваш вопрос — нужен для ранжирования результатов по релевантности).
  • query-docs — забирает документацию по точному ID. Принимает libraryId (например, /mongodb/docs или /vercel/next.js) и query (конкретный вопрос).

В режиме CLI те же шаги делают команды ctx7 library (поиск ID) и ctx7 docs (получение доков).


Тарифы и лимиты

  • Без API-ключа — анонимный тариф с пониженными лимитами запросов. Подходит, чтобы попробовать.
  • Бесплатный API-ключ — берётся в личном кабинете на context7.com/dashboard, поднимает лимиты. Передаётся через флаг --api-key или переменную CONTEXT7_API_KEY.
  • Документация по библиотекам в Context7 — community-contributed: её добавляют и поддерживают владельцы проектов, поэтому у библиотек есть показатель доверия (Trust Score), а качество доков различается.

Ограничения и на что обратить внимание

  • Нужен Node.js 18+ для ctx7 и npx-режима MCP-сервера.
  • Первый запуск npx бывает медленным — отсюда таймауты, особенно на Windows. Лечится запасом по startup_timeout_ms или глобальной установкой пакета.
  • Качество ответа зависит от качества доков конкретной библиотеки в индексе Context7. Для нишевых пакетов доков может не быть — тогда полезно передавать library ID вручную.
  • Плагин без ключа работает по анонимным лимитам — на активной работе их легко исчерпать.

Ссылки


По теме

Если вы настраиваете Codex или Claude Code под свои проекты и хотите, чтобы агент работал с актуальной документацией, а не с памятью годовой давности, это как раз тот случай, где имеет смысл собрать конфигурацию под вашу команду.

Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov.