Подключение mcp-1c к Claude Desktop
- claude
- desktop
- mcp
- integration
Как добавить mcp-1c-advanced в Claude Desktop. Файл конфигурации, путь к бинарнику, параметры подключения к базе 1С. Stdio-транспорт по умолчанию.
Claude Desktop поддерживает протокол MCP из коробки. Это значит что мост для 1С достаточно прописать в конфиге, и инструменты появятся в чате без всяких дополнительных адаптеров.
Транспорт по умолчанию это stdio: Claude Desktop запускает бинарник, общается с ним через stdin и stdout. Никаких отдельных портов настраивать не нужно, никаких HTTP-серверов поднимать тоже не нужно.
Где лежит конфиг
| ОС | Путь |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
Если файла нет, его нужно создать. Минимальный валидный конфиг это пустой объект {}.
Минимальная конфигурация
{
"mcpServers": {
"mcp-1c": {
"command": "/usr/local/bin/mcp-1c-advanced",
"args": [
"--base", "acc=Srvr=localhost;Ref=acc",
"--user", "Администратор",
"--password", ""
]
}
}
}
Объект mcpServers это словарь, где ключ это произвольное имя сервера для отображения в Claude (mcp-1c), а значение содержит команду запуска. Параметры --base, --user, --password совпадают с теми, что используются при ручном запуске.
После сохранения файла нужно перезапустить Claude Desktop. При следующем открытии чата в нижнем правом углу появится индикатор подключённых MCP-серверов с кнопкой инструментов.
Несколько баз
Флаг --base повторяется для каждой базы:
{
"mcpServers": {
"mcp-1c": {
"command": "/usr/local/bin/mcp-1c-advanced",
"args": [
"--base", "dev=File=/Users/me/bases/acc-dev",
"--base", "prod=Srvr=prod-server;Ref=acc",
"--base", "ref=File=/Users/me/bases/baseline-dump",
"--user", "Администратор",
"--password", ""
]
}
}
}
В каждом запросе к Claude можно явно указать базу: «посмотри метаданные документа Реализация в базе prod». Если не указать, Claude обычно использует первую в списке или спрашивает уточнение.
Профессиональная редакция и токены LLM
Если планируется использовать инструменты автогенерации документации, генерации тестов или навигации по типовым (которые внутри обращаются к LLM), переменные окружения с API-ключами надо задать в env секции:
{
"mcpServers": {
"mcp-1c": {
"command": "/usr/local/bin/mcp-1c-advanced",
"args": ["--base", "acc=File=/Users/me/bases/acc"],
"env": {
"YANDEXGPT_API_KEY": "AQVN...",
"YANDEXGPT_FOLDER_ID": "b1g..."
}
}
}
}
Без этих переменных LLM-возможности возвращают ошибку при первом вызове. Базовые инструменты (поиск, метаданные, оптимизатор запросов) от LLM не зависят и работают всегда.
Долгая инициализация
При первом запуске на большой конфигурации индексация может занять несколько минут. Claude Desktop в это время показывает индикатор загрузки и не позволяет использовать инструменты mcp-1c. После завершения индекс сохраняется в кэш ~/.cache/mcp-1c-advanced/, последующие запуски проходят за пару секунд.
Если хочется ускорить первый старт, можно предварительно прогнать индексацию вручную: запустить mcp-1c-advanced с теми же --base в терминале, дождаться готовности, остановить, перезапустить Claude. Кэш будет переиспользован.
Long polling вместо file/server
Если в базе уже установлено расширение MCP_Polling, в --base указывается схема poll://:
{
"mcpServers": {
"mcp-1c": {
"command": "/usr/local/bin/mcp-1c-advanced",
"args": [
"--base", "acc=poll://localhost:9090",
"--listen", ":9090"
]
}
}
}
В этом случае Claude Desktop запускает mcp-1c-advanced как stdio-сервер, и внутри он сам поднимает HTTP-приёмник для расширения 1С. Расширение в 1С опрашивает этот порт. Для разработчика это удобно тем, что один процесс держит и MCP-stdio для Claude, и HTTP для расширения, без разных конфигов.
Проверка
После перезапуска Claude в чате можно спросить: «какие инструменты mcp-1c тебе доступны». Claude перечислит зарегистрированные инструменты (code_read, code_search, code_analyze, bulk_analyze, и так далее, в зависимости от редакции лицензии).
Если инструменты не появились, в логах Claude Desktop (Help -> Open Logs) должна быть строка про запуск mcp-1c-advanced и причину ошибки. Чаще всего это неверный путь к бинарнику или к базе.