- Что на самом деле означают "плагины Claude Code"
- Как серверы MCP работают в качестве плагинов
- Установка первого плагина с помощью claude mcp add
- Области видимости: local, project и user
- Популярные плагины MCP и их возможности
- Как Claude маршрутизирует вызовы инструментов во время выполнения
- Запуск выполнения плагинов в песочнице
- Использование Novita LLM API для рассуждений об использовании инструментов
- Написание эффективных описаний инструментов
- Устранение распространённых проблем с плагинами
- Часто задаваемые вопросы
- Рекомендуемые статьи
В Claude Code нет традиционной системы плагинов с маркетплейсом и установкой в один клик. Вместо этого используется Model Context Protocol (MCP) — открытый стандарт от Anthropic для подключения внешних инструментов к сессии Claude Code. Серверы MCP выполняют функцию плагинов: они предоставляют вызываемые инструменты, Claude решает, когда их использовать, а результат возвращается обратно в диалог. Это руководство объясняет модель расширения; для готовых команд CLI и JSON-конфигурации обратитесь к руководству по настройке MCP Claude.
Что на самом деле означают “плагины Claude Code”
Когда разработчики ищут “плагины Claude Code”, они обычно хотят одно из трёх: способ дать Claude Code доступ к внешнему сервису (GitHub, база данных, веб-браузер), способ установить созданные сообществом расширения, или документацию о том, как работает механизм расширения.
Все три варианта ведут к MCP. Anthropic разработал Claude Code на основе Model Context Protocol, а не на проприетарном формате плагинов. Это означает:
- Нет отдельного маркетплейса: инструменты распространяются как серверы MCP, а не через платформозависимый реестр
- Нет блокировки на уровне API: любой разработчик может создать сервер и поделиться им
- Единая поверхность интеграции: Claude Code, Claude Desktop и другие хосты Claude используют один и тот же протокол
Практический эффект: каталог плагинов Claude Code — это экосистема MCP. Любой сервер, созданный по спецификации MCP, работает с Claude Code, и уже существуют тысячи таких серверов для баз данных, API, браузеров, запуска кода, файловых систем и многого другого.
Команды claude plugin install не существует. Её аналог — claude mcp add.
Как серверы MCP работают в качестве плагинов
Каждый сервер MCP — это процесс, который предоставляет набор инструментов через протокол MCP. Claude Code запускает или подключается к зарегистрированным серверам при старте сессии, запрашивает у них списки инструментов и использует эти инструменты, когда того требует диалог.
Три компонента образуют интерфейс сервера MCP:
| Объект | Что это | Пример |
|---|---|---|
| Инструмент (Tool) | Вызываемая функция с определёнными входными и выходными данными | run_python, search_docs, create_issue |
| Ресурс (Resource) | Доступные только для чтения данные, которые сервер предоставляет как контекст | Содержимое файла, строка базы данных, тестовый фикстура |
| Подсказка (Prompt) | Предварительно созданные шаблоны инструкций, встроенные в сервер | Чек-лист для ревью кода, шаблон задачи |
Для большинства рабочих процессов в Claude Code важны именно инструменты. Ресурсы и подсказки используются при построении более структурированных агентных конвейеров.
Ключевая последовательность протокола:
- Claude Code запускается, читает конфигурацию и запускает зарегистрированные серверы
- Каждый сервер отвечает на запрос
tools/listименами и определениями JSON Schema - Во время сессии Claude использует эти определения, чтобы решить, когда и как вызывать каждый инструмент
- Claude Code отправляет вызов, сервер выполняет его и возвращает результат, Claude обрабатывает результат и продолжает
Сервер отвечает за выполнение. Claude — за рассуждение о том, когда выполнение необходимо.
Установка первого плагина с помощью claude mcp add
claude mcp add — это команда, которая регистрирует сервер MCP в Claude Code. Выполните её один раз — сервер будет доступен во всех последующих сессиях.
# Базовая форма для stdio-серверов
claude mcp add <имя-сервера> -- <команда> [аргументы...]
# Базовая форма для HTTP-серверов
claude mcp add --transport http <имя-сервера> <url>
Предварительные требования перед выполнением любой команды claude mcp add:
- Claude Code установлен и находится в PATH (
claude --versionдолжен работать) - Node.js 18 или новее для серверов на основе npm
- Python 3.10 или новее для серверов на основе Python
Добавление браузерного плагина Playwright
Сервер MCP Playwright предоставляет Claude настоящий браузер — он может переходить по URL, нажимать на элементы, извлекать текст и возвращать скриншоты. Это один из самых полезных первых плагинов, так как не требует API-ключа и сразу демонстрирует возможности протокола.
claude mcp add playwright -- npx -y @playwright/mcp@latest
Проверьте регистрацию:
claude mcp list
Затем откройте сессию:
Используй playwright, чтобы открыть https://example.com и сообщить мне заголовок страницы и основной заголовок
Claude запустит браузер, перейдёт по URL, прочитает DOM и вернёт ответ — никакого скриптования с вашей стороны не требуется.
Добавление плагина для базы данных
Официальный сервер MCP SQLite позволяет Claude запрашивать и просматривать локальную базу данных SQLite прямо из диалога:
claude mcp add sqlite -- uvx mcp-server-sqlite --db-path /путь/к/вашей/базе.db
После этого вы можете попросить Claude написать запросы, объяснить схему или исследовать данные напрямую, без копирования определений схемы в каждый промпт.
Передача переменных окружения
Большинству серверов, работающих через API, требуются ключи. Используйте --env, чтобы передать их при регистрации, не встраивая в команду:
claude mcp add linear -- npx -y @linear/mcp-server \
--env LINEAR_API_KEY=ваш_ключ
Значения сохраняются в конфиге Claude Code и внедряются в процесс сервера при запуске.
Области видимости: local, project и user
По умолчанию claude mcp add регистрирует сервер в области local — он активен только когда Claude Code запущен из текущей директории. Три варианта области дают разные модели совместного использования:
| Область | Активна в | Файл конфигурации | Когда использовать |
|---|---|---|---|
local (по умолчанию) |
Только текущая директория | ~/.claude.json |
Личный сервер для разработки в одном проекте |
project |
Любая сессия внутри этого репозитория | .mcp.json в корне проекта |
Инструмент для команды — коммитить вместе с кодом |
user |
Каждая сессия Claude Code | ~/.claude.json в области user |
Глобальные инструменты, которые всегда должны быть доступны |
Добавьте --scope project, чтобы сохранить определение сервера вместе с вашим репозиторием:
claude mcp add sqlite --scope project -- uvx mcp-server-sqlite --db-path ./dev.db
Это создаст .mcp.json в корне проекта с определением сервера. Коллеги, запускающие Claude Code в том же репозитории, получат тот же инструмент автоматически — никакой настройки не требуется, кроме установки необходимых зависимостей.
Для инструментов глобальной области:
claude mcp add playwright --scope user -- npx -y @playwright/mcp@latest
Популярные плагины MCP и их возможности
Экосистема MCP значительно выросла с тех пор, как Anthropic опубликовал протокол. Вот некоторые категории с реальным применением:
Инструменты для разработки
| Сервер | Что добавляет |
|---|---|
@playwright/mcp |
Автоматизация браузера — навигация, клики, извлечение, скриншоты |
@modelcontextprotocol/server-git |
Чтение коммитов, diff, веток, blame из локальных репозиториев |
@modelcontextprotocol/server-filesystem |
Ограниченный доступ к файловой системе — чтение/запись файлов в заданных путях |
mcp-server-sqlite |
Запросы и просмотр баз данных SQLite |
Сервисы и API
| Сервер | Что добавляет |
|---|---|
@linear/mcp-server |
Создание, чтение и обновление задач Linear |
@sentry/mcp-server |
Запрос ошибок и трейсов Sentry |
@modelcontextprotocol/server-github |
Репозитории GitHub, задачи, PR и поиск кода |
@notionhq/notion-mcp-server |
Чтение и запись страниц и баз данных Notion |
ИИ и выполнение кода
| Сервер | Что добавляет |
|---|---|
| Сервер MCP Sandbox от Novita | Изолированное выполнение Python/Node в облачных песочницах |
@modelcontextprotocol/server-memory |
Постоянное key-value хранилище между сессиями |
Эти серверы устанавливаются через claude mcp add с помощью npx для пакетов на основе npm или uvx/pip для пакетов на Python.
Как Claude маршрутизирует вызовы инструментов во время выполнения
Claude не вызывает инструменты случайно или перебором. Он анализирует, какой инструмент (если вообще нужен) подходит для каждого шага задачи, основываясь исключительно на описании инструмента.
Логика маршрутизации на высоком уровне:
- При старте сессии Claude опрашивает все зарегистрированные серверы и строит каталог инструментов
- Для каждого сообщения пользователя или шага задачи Claude оценивает, соответствует ли какое-либо описание инструмента тому, что требуется
- Если есть подходящий кандидат, Claude формирует вызов с соответствующими аргументами на основе JSON Schema инструмента
- Claude Code отправляет вызов, ждёт результат и использует его перед следующим шагом
Одно следствие: описания инструментов критически важны. Расплывчатое описание вроде "полезный инструмент" приведёт к тому, что инструмент никогда не будет вызван. Описание, которое точно говорит, что делает инструмент, когда его вызывать и каковы его входы и выходы, приводит к точному и надёжному использованию.
Если вы создаёте свой сервер MCP, и инструменты не вызываются, несмотря на регистрацию, проблема почти всегда в описании, а не в реализации.
Claude также может объединять вызовы инструментов в рамках одного шага: прочитать файл для понимания контекста, найти зависимость, запустить тест, проверить вывод и предложить исправление — каждый шаг использует другой инструмент с потенциально другого сервера.
Запуск выполнения плагинов в песочнице
Когда плагины выполняют код — скрипты Python, команды оболочки, автоматизацию браузера — запуск их на локальной машине несёт риски. Инструмент с доступом к файловой системе или возможностью порождать процессы имеет широкую поверхность атаки, если он ведёт себя неправильно или получает вредоносный промпт.
Novita Agent Sandbox решает эту проблему, предоставляя изолированные облачные среды для выполнения инструментов. Вместо запуска сервера MCP локально вы разворачиваете его внутри экземпляра песочницы. Песочница получает собственную файловую систему, сетевые границы и ограничения ресурсов. Выполнение инструмента происходит внутри этих границ, не затрагивая хост-машину.
С точки зрения Claude интеграция идентична — список инструментов выглядит так же, и вызовы работают так же. Разница исключительно в том, где происходит выполнение.
Ключевые характеристики Novita Sandbox для выполнения инструментов MCP:
- Быстрый запуск: экземпляры запускаются в среднем за ~200 мс, что обеспечивает низкую задержку вызовов инструментов
- Посекундная оплата: вы платите только за активное время выполнения, а не за резервирование в простое
- Изолированная файловая система: каждый экземпляр песочницы имеет отдельное рабочее пространство, предотвращая утечку между сессиями
- Настраиваемые сетевые границы: контролируйте, к каким внешним сервисам может обращаться инструмент
Чтобы использовать Novita Sandbox SDK в обработчике инструмента MCP:
pip install novita-sandbox
from novita_sandbox.code_interpreter import Sandbox
def execute_code(code: str, api_key: str) -> dict:
sandbox = Sandbox.create(
template="code-interpreter-v1",
api_key=api_key,
domain="sandbox.novita.ai",
timeout=300,
)
result = sandbox.run_code(code, language="python")
sandbox.kill()
return {
"output": result.logs,
"error": result.error,
}
Шаблон code-interpreter-v1 содержит предустановленные pandas, numpy, matplotlib и другие распространённые пакеты. Полное руководство см. в статье Создайте сервер MCP для удалённого выполнения кода с помощью Novita Sandbox и библиотеки mcp-use.
Использование Novita LLM API для рассуждений об использовании инструментов
Claude Code обрабатывает логику использования инструментов с помощью модели, настроенной в качестве бэкенда. Если вы маршрутизируете Claude Code через альтернативного провайдера — по соображениям стоимости, задержки или доступа к моделям — слой рассуждений о вызовах инструментов также будет маршрутизироваться через этого провайдера.
Novita LLM API предоставляет совместимую с Anthropic конечную точку по адресу https://api.novita.ai/anthropic. Настройте её с помощью трёх переменных окружения:
export ANTHROPIC_BASE_URL="https://api.novita.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="ваш-novita-api-ключ"
export ANTHROPIC_MODEL="qwen/qwen3-coder-480b-a35b-instruct"
export ANTHROPIC_SMALL_FAST_MODEL="deepseek/deepseek-v4-flash"
С такой настройкой вызовы инструментов MCP в Claude Code продолжают работать как раньше. Маршрутизация влияет на то, какая модель выполняет рассуждения, а не на механизм диспетчеризации инструментов — он остаётся на уровне Claude Code.
Выбор моделей для сессий с интенсивным использованием инструментов:
- Qwen3-Coder 480B — хорошо подходит для долгосрочных задач, где Claude должен прочитать много файлов, спланировать многошаговую последовательность и вызывать инструменты на каждом этапе. Длинный контекст позволяет сохранять доступными результаты предыдущих вызовов на протяжении сложной сессии.
- MiniMax M2.7 — оптимизирована для точности использования инструментов в агентном режиме, специально разработана для уменьшения некорректных вызовов и обработки многошаговых последовательностей, где каждый шаг основывается на предыдущем результате.
- DeepSeek V4 Flash — быстрая и дешёвая, хороший выбор для
ANTHROPIC_SMALL_FAST_MODEL. Claude Code использует этот слот для суммаризации сессии и сжатия контекста — ни одно из этих действий не требует глубоких рассуждений.
Если вы создаёте собственный хост MCP (а не используете Claude Code), Novita LLM API также предоставляет совместимую с OpenAI конечную точку по адресу https://api.novita.ai/v3/openai для моделей, поддерживающих вызов функций:
import openai
client = openai.OpenAI(
base_url="https://api.novita.ai/v3/openai",
api_key="ваш-novita-api-ключ",
)
response = client.chat.completions.create(
model="meta-llama/llama-3.3-70b-instruct",
messages=[{"role": "user", "content": "Перечисли доступные инструменты и выполни быструю проверку"}],
tools=[
{
"type": "function",
"function": {
"name": "list_files",
"description": "Список файлов в текущей рабочей директории.",
"parameters": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Путь к директории для отображения списка."
}
},
"required": ["path"]
}
}
}
],
tool_choice="auto",
)
Это особенно полезно в сценариях, где вы хотите, чтобы модель с открытым весом выступала в качестве слоя рассуждений в пользовательском конвейере MCP с другими характеристиками стоимости или задержки по сравнению с закрытыми моделями.
Модели с открытым весом в качестве альтернативного бэкенда
Один из недооценённых вариантов для рабочих процессов Claude Code с интенсивным использованием MCP — полная замена модели Claude по умолчанию на способную альтернативу с открытым весом. Такие модели, как Qwen3-Coder, MiniMax M2.7 и DeepSeek V3.1, были специально обучены для точности вызова инструментов и многошаговых рассуждений — в некоторых бенчмарках они сравнимы или превосходят модели с закрытым исходным кодом в задачах вызова функций, но стоят значительно дешевле.
Для команд, запускающих высокообъёмные агентные сессии — CI-пайплайны, автоматическое ревью кода, пакетный рефакторинг — разница в стоимости существенна. Novita AI предоставляет доступ к этим моделям через тот же совместимый с Anthropic эндпоинт, поэтому переключение — это изменение конфигурации, а не переписывание кода.
Написание эффективных описаний инструментов
Если вы создаёте собственный сервер MCP для Claude Code, качество описаний ваших инструментов определяет, будет ли Claude использовать их эффективно. Это единственное, что даёт наибольший эффект для пользовательского сервера.
Описание инструмента, которое работает, отвечает на три вопроса:
- Что делает инструмент? — конкретно, не абстрактно
- Когда его следует вызывать? — сценарий или условие срабатывания
- Какие входные и выходные данные? — достаточно, чтобы Claude мог сформировать корректные аргументы
Сравните два описания для одного и того же инструмента search_codebase:
Плохое: "Поиск по кодовой базе."
Эффективное: "Поиск исходных файлов в текущем репозитории по символу, строке или regex-шаблону. Вызывайте этот инструмент, когда нужно найти, где определена функция, найти все использования переменной или определить, какие файлы ссылаются на конкретный модуль. Возвращает список путей к файлам с совпадающими строками и номерами строк."
Второе описание сообщает Claude, когда вызывать инструмент (а не только что он делает), что приводит к гораздо более точным и своевременным вызовам.
Несколько дополнительных практик:
- Помечайте изменяющие инструменты: Если инструмент пишет в базу данных или развёртывает код, укажите это явно. Claude будет более осторожен при вызове без чётких доказательств того, что действие предполагается.
- Объясняйте форму возвращаемых данных: Если инструмент возвращает JSON-объект с определённой структурой, опишите ключевые поля. Claude использует это для извлечения правильной информации для следующего шага.
- Сужайте области: Инструмент с названием
"run_anything", принимающий произвольные команды оболочки, сложнее для рассуждения Claude, чем"run_tests", который запускает тестовый набор проекта. Узкие инструменты с точными описаниями работают лучше, чем широкие с расплывчатыми.
Устранение распространённых проблем с плагинами
Инструмент не появляется после claude mcp add
Проверьте, что команда сервера выполняется без ошибок в свежем терминале. Claude Code может подавлять stderr дочернего процесса. Выполните claude mcp list — если сервер показывает тайм-аут или ошибку, проблема в самой команде, а не в конфигурации.
Инструменты зарегистрированы, но никогда не вызываются
Описания инструментов слишком расплывчаты. Перепишите их, указав, когда Claude должен вызывать инструмент и что означают аргументы.
npx зависает при первом запуске
Добавьте флаг -y, чтобы автоматически принять запрос на установку: npx -y @package/mcp-server. Без него npx ждёт подтверждения пользователя, и Claude Code видит тайм-аут соединения.
Сервер не активен в новом проекте
Вы зарегистрировали сервер в области local и запустили Claude Code из другой директории. Повторно добавьте с --scope user для глобального сервера или выполните команду add из корня правильного проекта.
Вызовы инструментов завершаются ошибкой валидации схемы
Claude формирует аргументы на основе JSON Schema инструмента. Если обязательные поля отсутствуют в схеме или типы не совпадают, сервер отклоняет вызов. Проверьте определение inputSchema — неполные схемы приводят к неполным аргументам вызова.
Команда claude mcp add не найдена
Установите Claude Code: npm install -g @anthropic-ai/claude-code, затем проверьте с помощью claude --version.
Часто задаваемые вопросы
Есть ли у Claude Code маркетплейс плагинов?
Нет, в традиционном понимании. Claude Code использует протокол MCP, а не платформозависимый маркетплейс. Созданные сообществом серверы MCP публикуются на npm, PyPI и GitHub. Некоторые агрегаторы ведут курируемые списки, но официального маркетплейса Claude Code для просмотра не существует.
Что такое документация плагинов Claude Code?
Официальная документация Anthropic по интеграции MCP в Claude Code находится по адресу docs.anthropic.com/claude-code. Спецификация MCP — на modelcontextprotocol.io. Это два источника для получения авторитетных сведений о протоколе и деталях реализации.
Чем сервер MCP отличается от плагина Claude Code?
В контексте Claude Code эти термины относятся к одному и тому же. Когда разработчики говорят “плагин Claude Code”, они обычно имеют в виду сервер MCP, подключённый к Claude Code. Слово “плагин” не является официальной терминологией Anthropic, но концепция напрямую отображается: установить один раз, использовать в каждой сессии, расширяет возможности Claude новыми инструментами.
Можно ли использовать один и тот же сервер MCP в Claude Desktop и Claude Code?
Да. Сервер не зависит от протокола — ему всё равно, какой хост подключается. Для stdio-серверов и Claude Code (через claude mcp add), и Claude Desktop (через JSON-файл конфигурации) могут запускать одну и ту же команду. Для HTTP-серверов любой хост, имеющий доступ к URL, может подключиться.
Сколько серверов MCP можно зарегистрировать?
Протокол MCP и Claude Code не накладывают жёстких ограничений. На практике наличие многих серверов с сотнями инструментов может замедлить запуск сессии (обнаружение инструментов происходит при старте) и добавить шума при выборе инструментов Claude. Старайтесь, чтобы активный набор был сфокусирован на том, что действительно нужно для данной сессии.
Есть ли риски безопасности при добавлении плагинов MCP?
Да. Серверы MCP выполняются как процессы с теми правами, которые необходимы для их работы. Сервер с доступом к файловой системе может читать или записывать файлы; сервер с возможностью выполнения команд оболочки может запускать произвольные команды. Добавляйте только те серверы, которым доверяете. Для производственных или общих сред рассмотрите возможность запуска серверов в изолированных средах — см. раздел о песочнице выше.
Поддерживают ли модели с открытым весом вызов инструментов MCP?
Да. Модели, реализующие вызов функций в формате API сообщений Anthropic, работают со слоем MCP в Claude Code независимо от провайдера. Qwen3-Coder, MiniMax M2.7 и DeepSeek V3.1 поддерживают структурированный вызов инструментов. Диспетчеризация инструментов выполняется Claude Code; модели достаточно вернуть корректные инструкции вызова инструментов в ожидаемом формате.
