18 KiB
Context7 MCP - Актуальная документация для любого промпта
❌ Без Context7
LLMs полагаются на устаревшую или обобщённую информацию о библиотеках, с которыми вы работаете. В результате этого вы получаете:
- ❌ Устаревшие примеры кода многолетней давности
- ❌ Выдуманные API, которые даже не существуют
- ❌ Обобщённые ответы для старых библиотек
✅ С Context7
Context7 MCP получает актуальную документацию и примеры кода, строго соответствующие нужной версии, прямо из исходных источников и вставляет их прямо в ваш промпт.
Добавьте строку use context7 в промпт для Cursor:
Создай базовый Next.js проект с маршрутизатором приложений. Use context7
Создай скрипт, удаляющий строки, где город равен "", используя учётные данные PostgreSQL. Use context7
Context7 MCP подгружает свежие примеры кода и документацию из источников прямо в контекст вашей LLM.
- 1️⃣ Напишите свой промпт так, как писали его всегда
- 2️⃣ Добавьте к промпту
use context7 - 3️⃣ Получите работающий результат
Никакого переключения между вкладками, выдуманного API или устаревшего кода.
🛠️ Начало работы
Требования
- Node.js >= v18.0.0
- Cursor, Windsurf, Claude Desktop или другой MCP клиент
Установка через Smithery
Воспользуйтесь Smithery, чтобы автоматически установить MCP сервер Context7 для Claude Desktop:
npx -y @smithery/cli install @upstash/context7-mcp --client claude
Установка в Cursor
Перейдите в вкладку: Settings -> Cursor Settings -> MCP -> Add new global MCP server
Рекомендуется вставить конфигурацию в файл ~/.cursor/mcp.json. Также можно установить конфигурацию для конкретного проекта, создав файл .cursor/mcp.json в его директории. Смотрите документацию Cursor MCP для получения дополнительной информации.
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Альтернативный вариант - Bun
{
"mcpServers": {
"context7": {
"command": "bunx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Альтернативный вариант - Deno
{
"mcpServers": {
"context7": {
"command": "deno",
"args": ["run", "--allow-env", "--allow-net", "npm:@upstash/context7-mcp"]
}
}
}
Установка в Windsurf
Добавьте следующие строки в ваш конфигурационный файл Windsurf MCP. Смотрите документацию Windsurf MCP для получения дополнительной информации.
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Установка в VS Code
Добавьте следующие строки в ваш конфигурационный файл VS Code MCP. Смотрите документацию VS Code MCP для получения дополнительной информации.
{
"servers": {
"Context7": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Установка in Zed
Можно установить через Zed расширение или добавить следующие строки в settings.json. Смотрите документацию Zed Context Server для получения дополнительной информации.
{
"context_servers": {
"Context7": {
"command": {
"path": "npx",
"args": ["-y", "@upstash/context7-mcp"]
},
"settings": {}
}
}
}
Установка в Claude Code
Запустите следующую команду для установки. Смотрите документацию Claude Code MCP для получения дополнительной информации.
claude mcp add context7 -- npx -y @upstash/context7-mcp
Установка в Claude Desktop
Добавьте следующие следующие строки в ваш конфигурационный файл claude_desktop_config.json. Смотрите документацию Claude Desktop MCP для получения дополнительной информации.
{
"mcpServers": {
"Context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Установка в BoltAI
Откройте страницу "Settings", перейдите в "Plugins" и добавьте следующие JSON-строки:
{
"mcpServers": {
"context7": {
"args": ["-y", "@upstash/context7-mcp"],
"command": "npx"
}
}
}
Установка в Copilot Coding Agent
Добавьте следующую конфигурацию в секцию mcp вашего файла настроек Copilot Coding Agent (Repository->Settings->Copilot->Coding agent->MCP configuration):
{
"mcpServers": {
"context7": {
"type": "http",
"url": "https://mcp.context7.com/mcp",
"tools": ["get-library-docs", "resolve-library-id"]
}
}
}
Подробнее см. в официальной документации GitHub.
Используя Docker
Если вы предпочитаете запускать MCP сервер в Docker контейнере:
-
Создайте образ Docker:
Во-первых, создайте
Dockerfileв корне вашего проекта (или в любом другом месте):Нажмите, чтобы просмотреть содержимое файла Dockerfile
FROM node:18-alpine WORKDIR /app # Установите последнюю версию пакета глобально RUN npm install -g @upstash/context7-mcp # Откройте стандартный порт, если это необходимо (необязательно, это зависит от взаимодействия с MCP клиентом) # EXPOSE 3000 # Стандартная команда для запуска сервера CMD ["context7-mcp"]Затем, соберите образ, используя тег (например,
context7-mcp). Убедитесь, что Docker Desktop (или демон Docker) работает. Запустите следующую команду в этой же директории, где сохранёнDockerfile:docker build -t context7-mcp . -
Настройте ваш MCP клиент:
Обновите вашу конфигурацию MCP клиента, чтобы использовать Docker команду.
Пример для cline_mcp_settings.json:
{ "mcpServers": { "Сontext7": { "autoApprove": [], "disabled": false, "timeout": 60, "command": "docker", "args": ["run", "-i", "--rm", "context7-mcp"], "transportType": "stdio" } } }Примечение: это пример конфигурации. Обратитесь к конкретным примерам для вашего MCP-клиента (например, Cursor, VS Code и т.д.), в предыдущих разделах этого README, чтобы адаптировать структуру (например,
mcpServersвместоservers). Также убедитесь, что имя образа вargsсоответствует тегу, использованному при выполнении командыdocker build.
Установка в Windows
Конфигурация в Windows немного отличается от Linux или macOS (в качестве примера используется Cline). Однако, эти же же принципы применимы и к другим редакторам. В случае необходимости обратитесь к настройкам command и args.
{
"mcpServers": {
"github.com/upstash/context7-mcp": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@upstash/context7-mcp"],
"disabled": false,
"autoApprove": []
}
}
}
Переменные окружения
DEFAULT_MINIMUM_TOKENS: минимальное количество токенов, необходимое для получения документации (по умолчанию: 10000).
Examples:
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"],
"env": {
"DEFAULT_MINIMUM_TOKENS": "10000"
}
}
}
}
Доступные инструменты
resolve-library-id: преобразует общее название библиотеки в совместимый с Context7 идентификатор.libraryName(обязательно)
get-library-docs: получает документацию по библиотеке по совместимому с Context7 идентификатору.context7CompatibleLibraryID(обязательно)topic(необязательно): фокусирует документацию на определённой теме (например, "routing", "hooks")tokens(необязательно, по умолчанию 10000): максимальное число токенов в ответе. Значения ниже заданногоDEFAULT_MINIMUM_TOKENSбудут автоматически увеличены до него.
Разработка
Склонируйте проект и установите зависимости:
bun i
Сборка:
bun run build
Пример локальной конфигурации
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["tsx", "/path/to/folder/context7-mcp/src/index.ts"]
}
}
}
Тестирование с помощью инспектора MCP
npx -y @modelcontextprotocol/inspector npx @upstash/context7-mcp
Решение проблем
ERR_MODULE_NOT_FOUND
Если вы видите эту ошибку, используйте bunx вместо npx.
{
"mcpServers": {
"context7": {
"command": "bunx",
"args": ["-y", "@upstash/context7-mcp"]
}
}
}
Зачастую это решает проблему с недостающими модулями, особенно в окружении, где npx некорректно устанавливает или разрешает библиотеки.
Проблемы с разрешением ESM
Если вы сталкиваетесь с проблемой по типу: Error: Cannot find module 'uriTemplate.js', попробуйте запустить команду с флагом --experimental-vm-modules:
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "--node-options=--experimental-vm-modules", "@upstash/context7-mcp"]
}
}
}
Проблемы с TLS/сертификатами
Используйте флаг --experimental-fetch c npx, чтобы избежать ошибки, связанные с TLS:
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "--node-options=--experimental-fetch", "@upstash/context7-mcp"]
}
}
}
Ошибки MCP клиента
-
Попробуйте добавить тег
@latestв имя пакета. -
Попробуйте использовать
bunxкак альтернативуnpx. -
Попробуйте использовать
denoкак заменуnpxилиbunx. -
Убедитесь, что используете версию Node v18 или выше, чтобы
npxподдерживал встроенныйfetch.
Отказ от ответственности
Проекты Context7 создаются сообществом. Мы стремимся поддерживать высокое качество, однако не можем гарантировать точность, полноту или безопасность всей документации по библиотекам. Проекты, представленные в Context7, разрабатываются и поддерживаются их авторами, а не командой Context7.
Если вы столкнётесь с подозрительным, неуместным или потенциально вредоносным контентом, пожалуйста, воспользуйтесь кнопкой "Report" на странице проекта, чтобы немедленно сообщить нам. Мы внимательно относимся ко всем обращениям и оперативно проверяем помеченные материалы, чтобы обеспечить надёжность и безопасность платформы.
Используя Context7, вы признаёте, что делаете это по собственному усмотрению и на свой страх и риск.
Оставайтесь с нами на связи
Будьте в курсе последних новостей на наших платформах:
- 📢 Следите за нашими новостями на X, чтобы быть в курсе последних новостей
- 🌐 Загляните на наш сайт
- 💬 При желании присоединяйтесь к нашему сообществу в Discord
Context7 в СМИ
- Better Stack: "Бесплатный инструмент делает Cursor в 10 раз умнее"
- Cole Medin: "Это, без сомнения, ЛУЧШИЙ MCP-сервер для AI-помощников в коде"
- Income stream surfers: "Context7 + SequentialThinking MCPs: Это уже AGI?"
- Julian Goldie SEO: "Context7: обновление MCP-агента"
- JeredBlu: "Context 7 MCP: мгновенный доступ к документации + настройка для VS Code"
- Income stream surfers: "Context7: новый MCP-сервер, который изменит кодинг с ИИ"
- AICodeKing: "Context7 + Cline & RooCode: Этот MCP сервер делает CLINE в 100 раз ЭФФЕКТИВНЕЕ!"
- Sean Kochel: "5 MCP серверов для стремительного вайб-программирования (Подключи и Работай)"
История звёзд на GitHub
Лицензия
MIT