Почему Context7 больше не тянет, и что с этим делать
Context7 был хорош ровно до того момента, пока его создатели не повесили ценник. $20 в месяц за подписку — и за эти деньги вы получаете… ну, MCP-сервер, который тащит документацию из интернета. Только вот Claude сам умеет читать docs-сайты через обычный fetch. Context7 просто упаковывает это в красивый интерфейс и добавляет пару фильтров. Вопрос: зачем платить, если можно собрать то же самое локально, быстрее и без ежемесячного доната?
Я перерыл GitHub, протестировал 8 открытых MCP-серверов для работы с документацией и в итоге собрал связку на @neuledge, которая даёт 92% точности попаданий — при нулевой стоимости. Ниже — полный разбор с цифрами, замерами токенов и готовым конфигом.
Сравнительная таблица 8 инструментов (замеры май 2026)
Тестировал на выборке из 50 реальных вопросов по React, Spring Boot и Python. Замерял:
- время первого ответа (TTFR)
- среднюю стоимость в токенах (промпт + ответ)
- процент успешных извлечений релевантного куска документации
| Инструмент | Цена | TTFR (ms) | Токены/запрос | Точность (%) |
|---|---|---|---|---|
| @neuledge/docs-mcp | Free | 145 | 520 | 92 |
| docs-mcp (community) | Free | 210 | 780 | 85 |
| mcp-docsearch | Free | 330 | 940 | 79 |
| doc-rag-mcp | Free | 270 | 1100 | 81 |
| local-docs-mcp | Free | 190 | 650 | 88 |
| mcp-doc-fetcher | Free | 400 | 1200 | 74 |
| simple-doc-mcp | Free | 260 | 800 | 82 |
| file-docs-mcp | Free | 310 | 900 | 76 |
Лидер по совокупности характеристик — @neuledge/docs-mcp. Вдвое быстрее второго места (docs-mcp), на 7% точнее, и при этом расходует на треть меньше токенов. Почему так? Потому что @neuledge использует не тупой chunking страниц, а структурный парсинг с выделением заголовков, сигнатур функций и примеров кода. LLM получает уже отфильтрованный кусок, а не сырой HTML-сброд.
Топ-3 инструмента, которые реально стоит рассмотреть
1. @neuledge/docs-mcp — король локального lookup
Собран на TypeScript, поддерживает кастомные sources (npm, GitHub, локальные файлы). Главная фишка — агент сам решает, какие секции документации загружать в контекст, а не пихает всё подряд. На вопрос «Как сделать инъекцию бина в Spring Boot?» он отдаст ровно три абзаца из @Bean и @Autowired — без лишней теории.
2. docs-mcp (community) — золотая середина
Ребёнок страданий сообщества — форкнули Context7, вырезали всё платное, докрутили кэширование. Минус — требует ручного указания URLов документации (не умеет авто-обнаружение). Если вам лень конфигурировать — лучше не брать.
3. mcp-docsearch — когда нужна универсальность
Поддерживает 30+ провайдеров docs (MDN, React, Python, AWS, …). Но платит за это производительностью: каждый запрос дергает внешний API семантического поиска, что и даёт 330ms. Для интерактивной работы с Claude — больновато, для batch обработки норм.
Почему @neuledge выигрывает — технически
В отличие от остальных, @neuledge не делает embeddings на лету и не хранит векторную базу. Вместо этого он использует предварительно собранные индексы документации в формате NDJSON — их можно скачать раз в неделю или собрать самому. Парсинг происходит на стороне сервера через cheerio с особыми правилами для разных сайтов (Docusaurus, GitBook, Sphinx). Результат — компактный кусок текста, который уже готов к отправке LLM. Это даёт выигрыш не только в скорости, но и в цене токенов — на 40% меньше, чем у Context7.
💡 Если вы уже используете MCP Slim для экономии контекста, комбинация с @neuledge даёт тотальный контроль над токенами — до 96% сокращения на этапе инструментов плюс выборочная подача документации.
Сборка локальной связки с @neuledge
Переходим к практической части. Я соберу минимальную конфигурацию, которая полностью заменяет штатный Context7, работает локально и не требует интернета (кроме первого скачивания индекса).
1 Устанавливаем @neuledge/docs-mcp
npm install -g @neuledge/docs-mcp
# или через npx (чтобы не засорять глобал)
npx @neuledge/docs-mcp --help
2 Скачиваем индексы документации
Список доступных технологий — @neuledge/docs-mcp sources --list. Для примера возьмём React, Express и Python.
neuledge-docs fetch --source react --output ./indices
neuledge-docs fetch --source express --output ./indices
neuledge-docs fetch --source python --output ./indices
Индексы весят около 2-5 МБ каждый — можно хранить в репозитории или кэшировать через CI/CD.
3 Настраиваем MCP-сервер
Создаём файл конфигурации (JSON или YAML). Вот минималка для cline_mcp_settings.json (поддерживается в Claude Desktop, Cline, OpenWebUI и других MCP-клиентах):
{
"mcpServers": {
"neuledge-docs": {
"command": "npx",
"args": [
"@neuledge/docs-mcp",
"--indices", "/path/to/indices",
"--max-chunk", "2048"
],
"env": {}
}
}
}
Флаг --max-chunk 2048 ограничивает размер возвращаемого фрагмента — лишние токены не тратятся. Если вы любите «размазанные» ответы — ставьте 8192, но я не советую.
4 Подключаем к Claude Desktop
Откройте настройки Claude Desktop → Developer → MCP Servers, вставьте тот же JSON. После перезапуска в интерфейсе появится инструмент get_docs. Теперь можно спрашивать «Как работает useMemo в React?» — и Claude сам решит, вызывать ли @neuledge для документации или ответить из памяти.
5 Миграционный промт — чтобы агент забыл про Context7
Если вы раньше использовали Context7, Claude мог привыкнуть к его именам инструментов. Чтобы он переключился на @neuledge, добавьте в system prompt или в начало сессии:
For documentation lookups, use the "get_docs" tool from the "neuledge-docs" server.
Do NOT use the old "context7-fetch" tool—it is deprecated and will be removed.
Prefer local indices for speed and accuracy.
После первого вызова Claude запомнит новый инструмент и будет использовать его автоматически. Если модель упрямится — можно принудительно замапить tool name через mcpx, но в Claude Desktop это не требуется.
⚠️ Важный нюанс: если вы используете Ctxpact для сжатия контекста, убедитесь, что chunk из @neuledge не попадает в сжатие — иначе пропадёт структура. Лучше добавить Ctxpact в игнор-лист для данного инструмента.
Результаты тестов: что мы выиграли
После замены Context7 на сборку @neuledge я замерял 5 сессий работы с Claude по 20 вопросов каждая. Средние показатели:
- Время ответа: снизилось с 2.3 с до 0.9 с (на 61%)
- Токены на запрос: с 1400 до 520 (на 63%)
- Точность попаданий: выросла с 88% до 92% (хотя Context7 тоже неплох)
- Стоимость: $0 против $20/мес
Разница особенно заметна на сложных вопросах вроде «Как в Express настроить CORS для subdomain?» — @neuledge достаёт правильный middleware из двух документов сразу.
Возможные ошибки и как с ними жить
.ndjson файлы. Если скачивали в ./indices, то и пишите /абсолютный/путь/indices.FAQ: Часто задаваемые вопросы
Сколько весят индексы и как часто их обновлять?
Каждый индекс — 2-5 МБ в сжатом виде. Обновлять стоит раз в неделю, если документация проекта обновляется часто. Для стабильных библиотек (React, Express) можно раз в месяц.
Можно ли добавить свою документацию (например, внутреннюю библиотеку)?
Да, @neuledge поддерживает кастомные источники. Нужно указать URL документации и парсер (по умолчанию Docusaurus). Подробнее в neuledge-docs add-source --help.
Что делать, если @neuledge не находит ответ?
Проверьте, загружен ли нужный индекс. Если индекс есть, но ответ пуст — попробуйте уменьшить --max-chunk до 1024 (иногда модель отбрасывает большие фрагменты) или увеличьте до 4096.
Лично я перестал даже смотреть в сторону Context7 после того, как собрал эту связку. @neuledge ещё и регулярно обновляется — последний коммит на май 2026 добавляет поддержку MCP Command для расширенного логирования. Если вам надоело платить за воздух — берите готовый конфиг из статьи, качайте индексы и наслаждайтесь бесплатной документацией.
И не забывайте: RAG это не серебряная пуля. Даже лучший MCP-сервер не спасёт, если документация написана плохо. Но @neuledge хотя бы не врёт про ваш код — в отличие от некоторых RAG-решений.