OpenCode MCP позволяет кодовому агенту подключать инструменты проекта через серверы MCP и использовать доступные действия в ходе задачи. Практический выбор начинается с того, какие данные агенту действительно нужны и какие операции он вправе выполнять. Подключённый сервер расширяет возможности агента, а вместе с ними растёт область доступа к проекту.

Инструменты проекта

TL;DR

OpenCode подключает MCP-серверы и показывает агенту их инструменты; каждому проекту нужен собственный минимальный список подключений.

Кодовому агенту часто хватает файлов репозитория и обычных средств разработки. MCP нужен там, где задача требует данных или действий за пределами этой базы: читать документацию команды, получать сведения из системы задач, обращаться к тестовому сервису. Документация OpenCode по MCP описывает подключение серверов и отмечает расход контекста на их инструменты. Это практический довод против подключения всего каталога возможностей сразу.

Сервер объявляет инструменты, ресурсы и другие доступные элементы, а агент видит их через клиент. Описание протокола как такового есть в обзоре MCP. Здесь задача уже: решить, какие вызовы помогают писать и проверять код конкретного проекта. Например, поиск по внутренней документации полезен при работе с устоявшимся интерфейсом, а доступ к рабочей базе ради исправления текста кнопки избыточен.

Перед подключением выпишите рабочий запрос обычным языком. «Найти описание схемы событий и обновить тест» предполагает чтение документации и запись в ветку репозитория. «Посмотреть состояние заказа» требует доступа к данным; для обучения агента лучше обезличенный тестовый набор. Выбор сервера определяется таким разбором, без оглядки на популярность его названия в списке расширений. Зафиксируйте причину подключения в настройках проекта.

Минимальный набор

Проведите инвентаризацию встроенных возможностей OpenCode до добавления MCP. Если агент уже читает проектные файлы, второй инструмент чтения тех же файлов создаст путаницу в результатах и правах. Если API сервиса нужен лишь для проверки одного поля, сервер с операциями удаления и редактирования создаёт лишний риск. Выбирайте инструмент с понятным назначением и ясным описанием входных данных.

ЗадачаНужный доступЛишний доступ
Обновить тест по документацииЧтение справки и запись в веткуИзменение рабочих данных
Проверить схему событияЧтение тестовой схемыУдаление коллекций
Сверить задачу с кодомЧтение задачи и файловАдминистрирование проекта

Таблица служит шаблоном обсуждения с владельцем системы. Названия разрешений зависят от сервера, поэтому фактические операции сверяют по его документации и списку инструментов после подключения. Настройки проекта храните вместе с рабочим контекстом команды, а секреты передавайте через предусмотренный безопасный механизм. Ключ доступа с правом изменения продуктивных данных ради чтения справочника выбирать нельзя.

Связь между сервером и клиентом подробнее разобрана в материале про MCP-клиент. Для OpenCode важна дополнительная проверка: видит ли агент только нужные серверы в текущем проекте. Подключение, полезное для одного репозитория, способно мешать в другом, где другая схема данных и другой состав команды. Список инструментов пересматривают при смене задачи.

Права и секреты

Разделите чтение и изменение. Чтение тестовой документации можно дать шире, изменение карточек задач или файловых хранилищ — только под конкретный сценарий. Доступ к рабочим сервисам согласуйте с их владельцами. Если сервер предлагает сразу широкие права, ограничьте учётную запись на стороне сервиса или выберите более узкую интеграцию. Указание агенту «будь осторожен» слабее реального ограничения полномочий.

  1. Опишите действие, которое агент должен выполнить, и источник данных, без которого задача остановится.
  2. Выберите сервер с документированным перечнем инструментов и проверьте его в тестовом проекте.
  3. Выдайте отдельные учётные данные с минимальными правами и сохраните секреты вне текста задачи.
  4. Запустите запрос на учебных данных, просмотрите вызовы инструментов и изменение файлов перед допуском к рабочему репозиторию.

Точные команды и формат файла настройки сверяйте с документацией своей версии OpenCode: конфигурация меняется. Даже при одинаковом названии сервера способы авторизации различаются. Проверьте, куда попадут журналы вызовов и какие данные окажутся в контексте модели. Служебные токены, персональные данные и содержимое закрытых репозиториев требуют отдельных правил команды.

После теста полезно записать короткое правило проекта: разрешённые серверы, типы задач, владелец ключей и порядок остановки доступа. Это точнее, чем общая памятка об ИИ. В разборе ИИ-агентов для бизнеса показано, как поставить агента в процесс с ответственным человеком. Здесь ответственность проявляется в конкретных вызовах инструментов и изменениях кода.

● Discovery · 1 час · бесплатно

Какие инструменты нужны вашему кодовому агенту?

Прийти на Discovery →

Проверка вызовов

Для контрольной задачи заранее задайте ожидаемый путь: какую страницу справки агент прочитает, какой файл изменит, какой тест запустит. После выполнения сравните ожидание с фактическим журналом. Удачный ответ при лишнем обращении к закрытому источнику считать успешным испытанием нельзя. В отчёте важно сохранить входной запрос, список вызванных инструментов и изменения в коде.

Код проверяют привычным способом: diff, тесты, ревью и сборка в изолированной среде. MCP сам по себе лишён функции проверки найденной информации. Сервер может вернуть устаревшую документацию или неожиданную ошибку; агент способен сделать убедительный вывод из плохих данных. Человек должен видеть происхождение справки и сверять её с актуальным интерфейсом проекта. Запуск кода и запись в сервисы особенно чувствительны к скрытым последствиям.

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

Материал про описание MCP-инструментов помогает оценить ясность схемы вызова. Хорошо описанный инструмент сообщает, что читает, что изменяет и что возвращает при ошибке. Это снижает вероятность случайного выбора, хотя итог всё равно проверяется ревьюером.

Поддержка набора

После запуска назначьте владельца каждого подключения. Он отслеживает изменения доступных инструментов, срок действия учётных данных и состояние тестового сервера. При обновлении клиента или сервера повторите короткую проверку типовой задачи. Новая версия может поменять название поля, способ авторизации либо формат ответа. У агента при этом может сохраниться старое описание действия в контексте рабочего диалога.

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

OpenCode остаётся кодовым агентом, а MCP — способом связать его с внешними возможностями проекта. Подключение сервера само по себе оставляет качество процесса разработки открытым вопросом. Качество определяют границы доступа, проверяемые тесты и ревью изменений человеком. Для нового проекта достаточно начать с одной задачи, где внешний источник действительно нужен, и расширять состав инструментов после разбора результатов. Удаляйте устаревшие доступы после смены владельца проекта.

// с чего начать

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

Частые вопросы

Как подключить MCP к OpenCode?
Выберите совместимый сервер, настройте его по документации своей версии OpenCode и проверьте соединение в проекте. Конкретные команды и поля конфигурации зависят от версии.
Сколько MCP-серверов нужно кодовому агенту?
Подключайте только серверы, без которых текущая задача остаётся без данных или действий. Избыточные инструменты усложняют выбор и проверку.
Может ли MCP-сервер изменить рабочие данные?
Если сервер открывает операции записи и учётная запись имеет нужные права, изменение возможно. Ограничьте права на стороне сервиса и проверяйте вызовы.
Где хранить ключи для MCP-сервера?
Храните секреты в предусмотренном для проекта защищённом механизме, отдельно от текста задачи и публичного репозитория.
Чем OpenCode MCP отличается от обычного MCP-клиента?
OpenCode применяет подключённые инструменты в задачах разработки. Протокол MCP остаётся тем же, а выбор прав и проверка результата привязаны к коду.