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

MCP

MCP (Model Context Protocol) подключает внешние серверы инструментов. Сервер отдаёт агенту инструменты, ресурсы и промпты. После подключения MCP-инструменты неотличимы от встроенных: те же права доступа, хуки и журнал.

Транспорты: stdio, http, sse.

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

Серверы описываются в settings.json под ключом mcp.servers. Файл выбирается по нужной области видимости (см. Конфигурация):

  • Глобально (все проекты): ~/.waibee/settings.json
  • Проект, в репозиторий: .mcp.json в корне проекта
  • Проект, лично: <проект>/.waibee/settings.local.json
settings.json
{
"mcp": {
"servers": {
"github": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}" },
"permission_level": "read_only",
"tools": { "include": ["list_issues", "create_issue"] }
},
"docs": {
"type": "http",
"url": "https://mcp.example.com",
"headers": { "Authorization": "Bearer ${DOCS_TOKEN}" }
}
}
}
}

Подстановка переменных окружения (${VAR}, ${VAR:-default}) работает в command, args, env, headers, url.

Основные поля сервера:

Поле Значение
type stdio | http | sse
command, args, env для stdio
url, headers для http / sse
enabled включён ли сервер (по умолчанию true)
timeout_ms таймаут вызова инструмента (по умолчанию 30000)
tools.include / tools.exclude белый и чёрный списки инструментов
permission_level read_only | edit | execute

Оверлей /mcp в TUI это полноценное управление серверами, включая добавление новых. Выходить в терминал не нужно. То же есть на странице расширений в браузере: форма сначала дозванивается до сервера и сохраняет запись только если он ответил, а в ответе показывает, сколько инструментов он даёт. Сервер с OAuth оттуда же проходит вход.

Клавиша Действие
a Добавить сервер: мастер из трёх шагов (имя и область, транспорт, адрес и OAuth)
e Изменить выбранный сервер тем же мастером
E Открыть файл настроек во внешнем редакторе
Пробел Включить или выключить сервер
Enter Раскрыть инструменты сервера. Там пробел включает и выключает отдельный инструмент
d Удалить запись, с подтверждением
l Пройти OAuth-вход
o Выйти из OAuth
Esc Назад, из инструментов к серверам, затем закрыть

Мастер добавления сам спрашивает область: глобально (~/.waibee/settings.json), в репозиторий (.mcp.json) или лично для проекта (.waibee/settings.local.json). Правки существующего сервера пишутся в файл той области, откуда он пришёл, а не в глобальный.

Серверы, пришедшие из плагина, доступны только для чтения: они описаны в самом плагине и выключаются вместе с ним через /plugin.

Команды CLI:

Окно терминала
waibee mcp add <имя> --scope user|shared|local --type stdio|http|sse
waibee mcp list # серверы и статус
waibee mcp status <имя> # статус сервера
waibee mcp login <имя> # OAuth-авторизация
waibee mcp logout <имя> # выйти
waibee mcp remove <имя> # удалить

Область (--scope) выбирает файл: user~/.waibee/settings.json, shared.mcp.json (в репозиторий), local.waibee/settings.local.json.

Для HTTP-серверов с авторизацией запусти waibee mcp login <имя>: пройдёт разовый OAuth-поток, токен сохранится на диске и будет обновляться автоматически.

MCP-инструменты проходят те же проверки прав, что и встроенные. Уровень по умолчанию edit, поле permission_level задаёт его для каждого сервера. Набор инструментов можно ограничить списками tools.include / tools.exclude.

Если у сервера включены resources, они доступны агенту как инструменты чтения. Если включены prompts, каждый промпт становится slash-командой вида /<сервер>:<промпт>.

Реестры и каталоги MCP-серверов, разница между официальными и сторонними, проверка перед установкой: раздел Где искать расширения. Частые связки собраны в разделе Подборка расширений.