Интеграция с ИИ-ассистентами (MCP)
vanessa-runner умеет работать как MCP-сервер (Model Context Protocol) — выставлять свои команды как инструменты для ИИ-ассистентов. После подключения ассистент (Claude, Copilot, Cursor и др.) может сам собирать конфигурации, запускать тесты, обслуживать информационные базы — вызывая vrunner за вас.
Сервер — это отдельная программа vrunner-mcp. Она работает по протоколу stdio: её запускает и общается с ней сама IDE/клиент, вручную запускать не нужно — достаточно прописать её в конфигурации подключения (см. ниже).
Что это даёт
- ассистент видит список команд vrunner с описанием и параметрами и подставляет аргументы сам;
- вывод выполняемой команды передаётся ассистенту по мере выполнения — видно ход сборки/тестов в реальном времени;
- общие параметры задаются один раз за сессию. Переданные в вызове опции (версия платформы, строка подключения, параметры СУБД и т.п.) запоминаются по имени и автоматически подставляются во все последующие команды, где есть такая же опция, — пока не заданы заново. Не нужно повторять их в каждом вызове;
- долгие команды выполняются в фоне. Тесты, инициализация и обновление ИБ, сборка конфигурации сразу возвращают идентификатор задачи (
taskId), а ход и результат ассистент забирает инструментамиtask_status/task_result(и может отменить черезtask_cancel) — соединение не висит на всё время; - источник один и тот же — это обычные команды vrunner, поэтому поведение совпадает с ручным запуском в терминале.
Требования
- установленный vanessa-runner (
opm install vanessa-runner) — вместе с ним ставится программаvrunner-mcp(должна быть доступна вPATH); - установленная платформа 1С:Предприятие (как и для обычной работы vrunner).
Если vrunner-mcp не установлен в PATH, сервер можно запускать из исходников через oscript src/mcp.os (см. варианты ниже).
Подключение в IDE
Во всех клиентах принцип один: добавить MCP-сервер с командой запуска vrunner-mcp. Отличается только файл и формат конфигурации.
{
"mcpServers": {
"vrunner": {
"command": "vrunner-mcp"
}
}
}{
"mcpServers": {
"vrunner": {
"command": "vrunner-mcp"
}
}
}{
"servers": {
"vrunner": {
"type": "stdio",
"command": "vrunner-mcp"
}
}
}{
"mcpServers": {
"vrunner": {
"command": "vrunner-mcp"
}
}
}{
"mcpServers": {
"vrunner": {
"command": "vrunner-mcp"
}
}
}- Claude Code — файл
.mcp.jsonв корне проекта (общий для команды), либо командаclaude mcp add vrunner -- vrunner-mcp. - Cursor —
.cursor/mcp.jsonв проекте или~/.cursor/mcp.jsonглобально. - VS Code —
.vscode/mcp.jsonв проекте (обратите внимание: ключserversи полеtype, в отличие от остальных клиентов). - Windsurf — раздел «MCP Servers» в настройках Cascade или файл
~/.codeium/windsurf/mcp_config.json. - Claude Desktop —
claude_desktop_config.json(в меню Settings → Developer).
Запуск из исходников (без установки в PATH)
Если работаете с vanessa-runner из репозитория, укажите oscript и путь к точке входа src/mcp.os. Рабочим каталогом должен быть корень проекта:
{
"mcpServers": {
"vrunner": {
"command": "oscript",
"args": ["src/mcp.os"]
}
}
}Проверка подключения
После добавления конфигурации перезапустите IDE/клиент (или переподключите сервер). В списке доступных инструментов появятся команды vrunner (cf_compile, test_xunit, infobase_init и др.) и управление фоновыми задачами task_status / task_result / task_cancel.
Попросите ассистента, например: «собери конфигурацию из src в build/1cv8.cf» — он подберёт инструмент cf_compile и подставит параметры. Заданную версию платформы или строку подключения достаточно указать один раз — они запомнятся и применятся к следующим командам автоматически.
Отладка вызова
Если нужно понять, что именно делает команда, попросите ассистента вызвать её с отладкой — у каждого инструмента есть параметр debug. При debug: true команда выполняется синхронно, а в ответ возвращается подробный отладочный лог (версия платформы, разбор параметров, шаги сборки). Это удобно при диагностике, когда обычного результата недостаточно.
Безопасность
Сервер только выставляет команды — никаких новых прав он не даёт; поведение совпадает с ручным запуском vrunner. Интерактивные команды (run designer, run enterprise) в MCP не выставляются.
Разрушающие операции (загрузка в ИБ, операции с хранилищем и кластером) тоже доступны ассистенту. Контроль над ними — на стороне клиента: MCP-клиенты по умолчанию спрашивают подтверждение перед каждым вызовом инструмента, пока вы не внесёте его в список разрешённых. Поэтому перед запуском потенциально опасных команд вы увидите запрос и сможете отказать.
