Инструменты
Context7 — свежая дока агенту
Скопируй страницу и вставь в Claude или GPT — разберёт под твою задачу.
Ты просишь агента написать код на свежем фреймворке — он уверенно выдаёт готовый кусок, ты вставляешь, а половина методов не работает: их либо переименовали, либо вообще выпилили пару версий назад. Знакомо? Это не тупость модели, это её слепое пятно: она «помнит» библиотеку такой, какой видела на момент обучения. Context7 закрывает эту дыру — подаёт агенту свежую документацию нужной версии прямо в контекст. В этом гайде разберём, как его подключить одной командой и как заставить агента писать по актуальному API, а не по памяти.
Короткий ответ
Context7 (от Upstash) — это MCP-сервер, который в момент задачи вытягивает актуальную официальную документацию библиотеки и подаёт её агенту. Модель перестаёт фантазировать по устаревшему конспекту и пишет по текущему API. Подключается одной командой из терминала, ровно как любой другой MCP-сервер:
claude mcp add context7 -- npx -y @upstash/context7-mcp
Дальше перезапускаешь сессию, а в запросе просто добавляешь фразу use context7 — и агент сам подтянет свежую доку перед тем, как писать код.
Что понадобится
- Установленный Claude Code — команда
claudeдоступна в терминале. - Понимание, что такое MCP. Context7 подключается как обычный MCP-сервер, поэтому вся базовая механика (
claude mcp add, scope, команда/mcp) — та же, что в гайде про MCP. Если ещё не разбирался с MCP — начни с него, тут будет проще. - Скачивать заранее ничего не надо. Локальный вариант поднимается через
npxпри первом запуске, для облачного варианта нужен только URL. Никаких предустановок. - Ключ — не обязателен. Context7 работает бесплатно без ключа. Ключ нужен только под высокие лимиты — о нём ниже.
Зачем он нужен
Языковая модель — это память, замороженная на каком-то моменте. Её обучили на большом срезе документации и кода, но у этого среза есть дата. Всё, что вышло после, для модели просто не существует. А библиотеки живут своей жизнью: методы переименовывают, API переписывают, старые подходы объявляют устаревшими и выкидывают.
Дальше происходит коварное. Модель не говорит «я не знаю актуальную версию». Она берёт то, что помнит, и выдаёт с полной уверенностью: синтаксис выглядит настоящим, названия функций звучат логично, отступы на месте. Ты веришь и вставляешь — а оно не запускается, потому что метод переименовали ещё два релиза назад. Это и есть галлюцинации в коде: не абракадабра, а гладкая ложь, которая дорого стоит в отладке — сначала грешишь на свою опечатку, лезешь в дебаг, гуглишь ошибку, и только потом доходит, что агент сослался на версию трёхлетней давности.
Ключевая мысль: агент врёт про код не потому, что глупый, а потому, что честно пересказывает устаревший конспект. Проблема не в мышлении, а в источнике. Context7 меняет источник — подсовывает документацию конкретной актуальной версии ровно тогда, когда агент собрался писать.
Как подключить
Подключение идёт одной командой — claude mcp add, запускаешь её в терминале. Есть два способа: локальный через npx и удалённый через HTTP. Выбирай любой, результат один.
Способ 1. Локально через npx (stdio) — сервер поднимается прямо у тебя на машине:
claude mcp add context7 -- npx -y @upstash/context7-mcp
Обрати внимание на двойной дефис --: он отделяет опции самого Claude от команды запуска сервера. Здесь context7 — имя, под которым сервер будет виден в списке, а npx -y @upstash/context7-mcp — команда, которой он поднимается.
Способ 2. Удалённый HTTP-сервер — Context7 уже развёрнут в облаке, ставить локально ничего не надо, просто указываешь адрес:
claude mcp add --transport http context7 https://mcp.context7.com/mcp
Разница простая: в первом случае сервер живёт у тебя и поднимается через npx, во втором он уже где-то работает, а ты даёшь ссылку.
Чтобы был доступен во всех проектах — добавь --scope user. По умолчанию сервер добавляется только в текущий проект; с этим флагом он будет под рукой в любом:
claude mcp add --scope user context7 -- npx -y @upstash/context7-mcp
Про ключ. Context7 работает бесплатно и без ключа — на старте этого достаточно. Если упрёшься в лимит запросов, на context7.com можно получить API-ключ под более высокие лимиты. Для HTTP-варианта он передаётся заголовком:
claude mcp add --transport http context7 https://mcp.context7.com/mcp --header "Authorization: Bearer ТВОЙ_КЛЮЧ"
Ключ нужен не для того, чтобы Context7 заработал, а чтобы поднять потолок по количеству запросов. Начни без него. Понадобится — заведи ключ на context7.com, там же вся актуальная инструкция по его выдаче.
Как пользоваться
После claude mcp add перезапусти сессию Claude Code — новые инструменты подхватываются только при старте. Дальше пользоваться Context7 просто: в запросе добавляешь фразу use context7, и агент сам обратится к серверу, вытянет актуальную документацию нужной библиотеки и уже на ней построит ответ.
Выглядит это так: формулируешь задачу как обычно и в конце дописываешь волшебные два слова. Например:
claude "напиши клиентский компонент для Next.js 15 с серверными экшенами. use context7"
Ключевая фишка — приписка use context7 в самом конце промпта. Агент увидит эту фразу, сходит за свежей докой по Next.js 15 и напишет код по текущему API, а не по тому, что помнит с обучения.
Совет: подключай Context7 точечно и добавляй use context7 только когда работаешь с быстро меняющейся библиотекой, свежим мажорным релизом или малоизвестным пакетом. На стабильных вещах, которые модель и так знает наизусть, он не нужен — лишний запрос за докой ничего не улучшит.
Проверить, что подключилось
После добавления убедись, что сервер на месте и живой:
claude mcp list
Показывает список подключённых серверов и их статус — подключён или отвалился. Прямо внутри чата Claude Code работает команда /mcp — она выводит серверы и статус авторизации. А если сервер больше не нужен, убираешь его так:
claude mcp remove context7
Важно: послеclaude mcp addперезапусти сессию. Пока не перезапустишь — агент не увидит Context7, даже еслиclaude mcp listуже показывает сервер как подключённый.
Частые ошибки
| Симптом | Причина | Что сделать |
|---|---|---|
| Context7 не появился после добавления | Не перезапустил сессию — новые инструменты подхватываются только при старте | Перезапусти Claude Code, затем проверь claude mcp list |
| Агент всё равно пишет устаревший код | В запрос не добавлена фраза use context7 — сервер подключён, но агент к нему не обратился |
Допиши use context7 в конец запроса явно |
В /mcp сервер горит как failed |
Сервер не стартует: нет node/npx или пакет не подтянулся |
Проверь, что установлен Node с npx; запусти команду запуска вручную в терминале |
| Упираюсь в лимит запросов | Исчерпан бесплатный лимит без ключа | Получи API-ключ на context7.com и подключи через --header |
| Context7 виден в одном проекте, а в другом — нет | Добавлен без --scope user (по умолчанию — только текущий проект) |
Добавь заново со --scope user |
FAQ
Чем Context7 отличается от простого поиска в интернете?
Обычный поиск выдаёт случайные страницы — форумы, старые статьи, чужие туториалы разной свежести, и агенту приходится гадать, что из этого актуально. Context7 отдаёт именно документацию конкретной версии библиотеки, структурированно и по делу. Это не «поищи что-нибудь про эту функцию», а «вот официальное описание этого метода в текущем API».
Надо платить?
Нет. Context7 работает бесплатно и без ключа — на старте этого хватает с запасом. Ключ нужен только если упрёшься в лимит запросов и захочешь его поднять; выдаётся на context7.com.
Он всегда подключён и всё замедляет?
Нет. Сервер просто висит подключённым, но за документацией агент ходит только когда ты попросил — через фразу use context7. Без неё он работает как обычно, из своей памяти. То есть ты сам решаешь, на какой задаче ему нужна свежая дока, а на какой — нет.
Это отменяет проверку кода за мной?
Нет. Context7 сужает разрыв, но не убирает его: агент может неверно понять задачу или собрать рабочие куски в нерабочую конструкцию. Свежая дока под рукой повышает шансы, что читать придётся рабочий вариант, — но финальную проверку кода никто с тебя не снимал.
Что ты увидишь
С припиской «use context7» агент подтягивает СВЕЖУЮ документацию библиотеки, а не выдумывает API по памяти:
> напиши серверный экшен для Next.js 15. use context7
✔ context7: подтянута документация Next.js 15
[дальше код под актуальный API, а не устаревший]
Итог
Языковая модель помнит код на момент своего обучения и выдаёт устаревший синтаксис как настоящий — это галлюцинации, которые дорого стоят в отладке. Context7 — бесплатный MCP-сервер от Upstash, который в момент задачи подаёт агенту свежую официальную документацию нужной библиотеки. Подключается одной командой claude mcp add context7, активируется фразой use context7 в запросе. Особенно выручает на быстро меняющихся фреймворках, свежих мажорных релизах и малоизвестных пакетах; на стабильных вещах не нужен. Если ещё не разобрался, как вообще подключать такие «руки» агенту, — загляни в гайд про MCP; а чтобы дать агенту глаза на реальную страницу в браузере — в гайд про браузер для агента.