Перейти к содержимому
PD
Claude Code

MCP-серверы в Claude Code: подключение и настройка

Зачем агенту MCP-серверы, как подключить сервер к Claude Code, как проверить, что он действительно виден, и разбор частых ошибок при подключении.

Все статьи гида Claude Code · 13

MCP - это способ дать агенту инструменты, которых у него нет из коробки. Из коробки он умеет работать с файлами и запускать команды; всё остальное - базы, трекеры, внешние сервисы - приходит через серверы.

Зачем агенту MCP

Задача формулируется просто: агент отвечает по тому, что видит. Если данные лежат вне репозитория, он про них не знает и начинает догадываться.

Типичные случаи, когда сервер решает задачу:

  • База данных. Агент видит реальную схему, а не ваш пересказ, и пишет запросы под неё.
  • Трекер задач. Может прочитать описание тикета вместо того, чтобы вы копировали его в чат.
  • Внешний API. Обращение к сервису, у которого есть данные, нужные для задачи.
  • Документация и внутренние базы знаний. Особенно там, где решения не выводятся из кода.

Обратная сторона: каждый подключённый сервер добавляет описания инструментов в контекст. Десять серверов «на всякий случай» - это заметный расход в каждой задаче, включая те, где ни один из них не нужен. Подключайте то, что используете. Про расход контекста подробно - в статье про лимиты.

Подключение сервера

Порядок одинаковый почти для всех серверов:

  1. Понять, что это за сервер. Локальная программа, которую запускает агент, или удалённый сервис, к которому он подключается. От этого зависит вид конфигурации.
  2. Добавить его в конфигурацию. Указывается команда запуска либо адрес, плюс переменные окружения с доступами.
  3. Положить секреты в окружение, а не в файл конфигурации внутри репозитория. Это ровно та же история, что с ключом API.
  4. Выбрать область видимости. Сервер может быть личным - для всех ваших проектов, - или проектным, и тогда он подхватывается у всей команды.
  5. Перезапустить агента. Конфигурация читается при старте.

Отдельно про проектные серверы: если сервер описан в репозитории, его получит каждый, кто откроет проект. Это удобно и одновременно означает, что чужой репозиторий может привести с собой конфигурацию сервера, которую вы не читали. Смотрите, что подключаете.

Как проверить, что он виден

Три проверки по возрастанию надёжности:

  1. Список серверов в интерфейсе. Показывает статус: запущен, упал, не найден.
  2. Список инструментов. Спросите у агента, какие инструменты ему доступны. Сервер может быть запущен, но не отдать ни одного инструмента, если он не смог авторизоваться.
  3. Реальный вызов. Попросите сделать что-то простое и безопасное через этот сервер. Только это подтверждает, что цепочка работает целиком.

Частые ошибки

  • Сервер не стартует. Чаще всего не найдена команда запуска: агент запускает её в своём окружении, а не в вашей оболочке, и PATH может отличаться. Указывайте полный путь, если сомневаетесь.
  • Стартует, но инструментов нет. Не прошла авторизация. Смотрите переменные окружения: пустая переменная выглядит как отсутствующая.
  • Инструменты есть, но агент их не использует. Описания слишком расплывчатые, и он не понимает, когда их применять. Это чинится на стороне сервера, в описаниях.
  • Всё работает, но медленно. Сервер ходит во внешнюю систему на каждый вызов. Иногда дешевле один раз выгрузить данные в файл.
  • Конфликт имён. Два сервера дали инструменты с похожими названиями, и агент выбирает не тот. Отключите лишний.

Что дальше

Про сам протокол и про то, как написать свой сервер, - гид по MCP. MCP хорошо сочетается со скиллами: скилл описывает процедуру, сервер даёт доступ к данным, которые в ней нужны. Общая картина - гид по Claude Code.

Вопросы и ответы

Что такое MCP-сервер простыми словами?

Это программа-посредник, которая даёт агенту доступ к чему-то за пределами файлов проекта: к базе данных, к трекеру задач, к внешнему API. Агент видит её как набор инструментов с описаниями и вызывает их, когда задача требует данных, которых нет в репозитории.

Как проверить, что MCP-сервер подключился?

В интерфейсе есть список подключённых серверов и их статус. Если сервер в списке, но помечен как упавший, проблема в его запуске, а не в конфиге агента. Второй способ - спросить у агента, какие инструменты ему доступны: он перечислит то, что реально видит.

Безопасно ли давать агенту доступ к базе через MCP?

Ровно настолько, насколько безопасны выданные права. Агент выполнит то, что ему доступно, включая изменение данных, если такое право есть. Практика: отдельный пользователь базы, доступ только на чтение по умолчанию и никакого продакшена, пока схема работы не обкатана.

Ещё по теме