Если есть CLI — используй CLI. Дешевле, проще, известнее модели.
Описание
Если у сервиса есть CLI — агент использует её через bash, без накладных расходов MCP (см. UC-007 · MCP для stateful задач). CLI обычно уже известна модели, ставится проще и не требует поддержки протокола.
Предусловия
- CLI-утилита установлена локально и доступна в PATH
- Выполнен логин (если требуется)
Постусловия / гарантия успеха
- Действие выполнено, результат вернулся как stdout/JSON
- Минимум потребления токенов на саму инфраструктуру
Основной сценарий
- Разработчик упоминает в AGENTS.md (UC-003 · AGENTS.md) / скиллах, что для X используется CLI-утилита
- Агент при возникновении соответствующей задачи вызывает CLI напрямую
- Обрабатывает вывод и возвращает результат разработчику
Расширения / альтернативные потоки
- 1a. Для self-hosted сервисов (например, локальный Sentry без облачного MCP) CLI — единственный практичный путь
Исключения и риски
Бизнес-правила и ограничения
- Сначала проверять, есть ли CLI; MCP — только если CLI недостаточно
Примечания
Пример: настройка интеграции с Sentry (self-hosted, без MCP) через CLI-утилиту полностью покрывает работу с ошибками продакшена.
Частые вопросы
Какие CLI агент знает «из коробки»?+
git, gh (GitHub), curl/wget, npm/pnpm/yarn, docker, kubectl, aws-cli, sentry-cli, lighthouse, playwright. Это собрано из обучающей выборки, синтаксис помнит до уровня типичных флагов.
Что если CLI плохо известна модели?+
Прописать в AGENTS.md типовые команды и их назначение. После этого агент работает с ней так же надёжно, как с git.
Можно ли совмещать CLI и MCP в одной задаче?+
Да. Например, gh CLI для рутины + MCP Chrome DevTools для отладки фронта. Главное — не плодить MCP без необходимости.
Self-hosted сервисы без облачного MCP — как с ними работать?+
CLI — практически единственный путь. Sentry self-hosted, Gitea, локальный Grafana — все имеют CLI-обёртки и легко вписываются в bash-flow агента.