MCP-серверы

MCP (Model Context Protocol) — это открытый стандарт, который позволяет подключить к Pastukhov Agent внешние сервисы и источники данных: базы данных, файловые системы, веб-сервисы, поиск и многое другое. MCP-сервер — это небольшая отдельная программа-«посредник», через которую агент получает доступ к такому сервису. Агенту не нужно иметь встроенный код для каждого сервиса — достаточно описать сервер по стандарту MCP, и модель сможет им пользоваться в разговоре.

Окно настройки MCP-серверов

Сначала подумайте о навыках. Если острой необходимости нет, используйте скрипты внутри навыков — они дают тот же доступ к внешним данным и инструментам. Почему: MCP-сервер добавляет в контекст модели все свои определения функций и длинные описания, и эти «накладные расходы» оплачиваются на каждом шаге работы. Навыки же загружаются только когда нужны, поддерживают постепенное раскрытие параметров (детали инструментов подгружаются лишь при реальном вызове) и дают полный контроль: если видите, что модель снова и снова ошибается при вызове инструмента, вы можете просто поправить его описание.

Кроме того, часто проще попросить модель написать небольшой Python-скрипт для доступа к базе или файлам, чем искать подходящий MCP-сервер и «уговаривать» модель использовать его нужным образом. Именно так редактируется весь этот сайт: создание и отладка скриптов для WordPress заняли меньше десяти сообщений, и результат не только работает, но и легко отлаживается и дорабатывается.


Как это работает

MCP-серверы работают как отдельные процессы и общаются с Claude Code по стандартизированному протоколу. Pastukhov Agent хранит их настройки в файле .pastukhov/mcp.yml и синхронизирует его с командной строкой Claude Code, обновляя настройки MCP уровня проекта (глобальные настройки при этом не затрагиваются). При старте разговора Claude Code подключается ко всем включённым серверам, и их инструменты становятся доступны модели наравне со встроенными.

Подключение может идти тремя способами (типами транспорта):

  • STDIO — сервер запускается как локальный процесс на вашем компьютере или сервере. Самый распространённый способ для серверов на Node.js и Python;
  • HTTP — подключение к удалённому серверу через интернет (для облачных MCP-сервисов);
  • SSE — подключение через технологию Server-Sent Events; устаревший способ, постепенно заменяется на HTTP.

Окно MCP-серверов

Окно MCP-серверов открывается из главного меню. В нём две основные области:

  • Список серверов (левая панель) — все настроенные серверы, сгруппированные по источнику: управляемые приложением (настроены через Pastukhov Agent), внешние (настроены прямо в Claude CLI) и серверы плагинов. У каждого сервера — имя и индикатор состояния (зелёная точка — включён).
  • Панель конфигурации (правая панель) — настройки выбранного сервера: просмотр и изменение.

В заголовке окна — действия с настройками: Копировать все серверы (выгрузить конфигурацию в буфер обмена в формате JSON), Вставить (загрузить конфигурацию из буфера обмена) и Обновить (перечитать список серверов из командной строки Claude Code).


Добавление MCP-сервера

Как добавить новый сервер:

  1. Откройте окно MCP-серверов из главного меню;
  2. Нажмите Добавить сервер на панели списка;
  3. Введите уникальное имя сервера (имена не должны повторяться);
  4. Заполните параметры сервера на панели конфигурации;
  5. Нажмите Сохранить изменения.

Новый сервер создаётся с транспортом STDIO и пустой командой. Выберите подходящий тип транспорта и заполните нужные поля.


Поля конфигурации

Набор полей зависит от выбранного типа транспорта:

STDIO-серверы

  • Type — тип транспорта stdio для локальных серверов;
  • Command — команда запуска сервера (например, npx -y @modelcontextprotocol/server-github). Команда автоматически делится на исполняемый файл и аргументы;
  • Environment Variables — переменные окружения, которые получает сервер (например, GITHUB_TOKEN для GitHub-сервера).

HTTP / SSE-серверы

  • Type — тип транспорта http или sse для удалённых серверов;
  • URL — адрес сервера (например, https://mcp.context7.com/mcp);
  • Headers — дополнительные заголовки запросов (например, ключ CONTEXT7_API_KEY для входа).

Общие поля

  • Enabled — включать или выключать сервер, не удаляя его настройки;
  • Rename — переименовать сервер, сохранив его конфигурацию;
  • Delete — удалить сервер (с подтверждением).

Файл конфигурации

Настройки MCP-серверов хранятся в файле .pastukhov/mcp.yml в папке вашего проекта. Файл можно смело сохранять в системе контроля версий: по умолчанию в нём нет секретов (ключи API обычно подставляются из переменных окружения).

version: 1.0
servers:
  context7:
    enabled: true
    type: http
    url: https://mcp.context7.com/mcp
    headers:
      CONTEXT7_API_KEY: $CONTEXT7_API_KEY

  github:
    enabled: true
    type: stdio
    command: npx -y @modelcontextprotocol/server-github
    env:
      GITHUB_TOKEN: $GITHUB_TOKEN

Запись $ИМЯ_ПЕРЕМЕННОЙ означает ссылку на переменную окружения системы: само значение остаётся вне репозитория. О подстановке переменных подробнее — на странице Модели.

Синхронизация: при сохранении изменений в окне Pastukhov Agent записывает обновлённую конфигурацию в .pastukhov/mcp.yml и автоматически синхронизирует её с командной строкой Claude Code (команды claude mcp add и claude mcp remove). Обновлённый список серверов модель использует сразу — перезапускать ничего не нужно.


Импорт и экспорт

Окно MCP умеет переносить настройки серверов через буфер обмена — удобно, когда нужно поделиться серверами между проектами:

  • Копировать все серверы — выгружает всю конфигурацию серверов в буфер обмена в формате JSON;
  • Копировать один сервер — клик правой кнопкой мыши по серверу в списке и выбор копирования: выгружается только этот сервер;
  • Вставить — загружает JSON из буфера обмена. Если имена серверов совпадают с уже существующими, приложение спросит: заменить существующий сервер или пропустить импорт.

Если что-то не работает

  • Сервер не появляется в списке доступных — нажмите Обновить в заголовке окна, чтобы перечитать список из Claude Code CLI. Если сервер выключен — включите его и сохраните.
  • STDIO-сервер не запускается — проверьте, что команда верна и нужная среда (Node.js, Python и т. п.) установлена. Команда должна быть полной, вместе с аргументами (например, npx -y @modelcontextprotocol/server-github).
  • Ошибки подключения HTTP-сервера — проверьте, что адрес верен и доступен с вашего сервера, а все нужные заголовки (ключи API, токены входа) заполнены.
  • Ошибки синхронизации — если Pastukhov Agent не может синхронизироваться с Claude Code CLI, проверьте путь установки Claude Code. При необходимости задайте собственный путь переменной AGENT_CLAUDE_PATH (см. Модели).
  • Переменная окружения не подставляется — убедитесь, что переменная задана в системном окружении или конфигурации Docker, а не только в переменных Pastukhov Agent. Запись $ИМЯ_ПЕРЕМЕННОЙ в mcp.yml читается именно из системного окружения.