Документация MCP-1C

Полное руководство по установке, настройке и использованию

Быстрый старт

Установка

Скачайте готовый бинарник для вашей операционной системы со страницы Releases на GitHub, или установите одной командой:

# Linux / macOS
curl -fsSL https://feenlace.ru/install.sh | sh
# Windows (PowerShell)
irm https://feenlace.ru/install.ps1 | iex

При регистрации вы получите 14-дневный пробный период Профессиональной версии со всеми возможностями. Скачайте бинарник mcp-1c-pro в личном кабинете.

Расширенная: Бинарник mcp-1c-advanced доступен в личном кабинете после оформления подписки.

Профессиональная: Скачивание бинарника mcp-1c-pro доступно в личном кабинете после регистрации. 14 дней пробного периода, без привязки карты.

Проверьте установку и узнайте версию бинарника:

mcp-1c-advanced --version    # выводит версию и атрибуцию BSL-LS
Активация триала: зарегистрируйтесь на feenlace.ru → подтвердите почту → получите 14 дней Профессиональной версии без привязки карты. Бинарник mcp-1c-pro и ключ — в личном кабинете. Подробнее об активации, статусе и переносе лицензии — в разделе Лицензирование.

Подключение базы 1С

MCP-1C использует расширение конфигурации для чтения метаданных. Установите его автоматически:

# Файловая база - Windows
mcp-1c --install "C:\Users\Dev\InfoBases\ERP"

# Файловая база - Linux / macOS
mcp-1c --install ~/Documents/InfoBase

# Клиент-серверная база (MS SQL, PostgreSQL)
mcp-1c --install "srv-1c\buh_prod" --server --db-user Admin --db-password pass
Что произойдёт при установке
  1. В базу 1С загрузится расширение "MCP" (~50 КБ)
  2. Расширение добавит HTTP-сервис для обмена данными с AI
  3. Расширение Открытой версии работает только на чтение, не изменяет данные и конфигурацию
  4. Расширенная версия добавляет возможность выполнения кода через sandbox с подтверждением и аудит-логом
  5. Расширение можно отключить или удалить в любой момент через Конфигуратор

Затем запустите HTTP-сервис 1С. Рекомендуемый способ -- публикация через Apache или IIS:

Конфигуратор → Администрирование → Публикация на веб-сервере

# Быстрый запуск для разработки (только Windows)
"C:\Program Files\1cv8\8.3.XX.XXXX\bin\1cv8.exe" ENTERPRISE /F "C:\путь\к\базе" /HTTPPort 8080

Параметр /HTTPPort -- недокументированный, работает только на Windows. На Linux используйте Apache или ibsrv.

Расширенные варианты установки (клиент-серверная и удалённая база)

Расширение MCP-1C можно установить как в файловые, так и в клиент-серверные базы данных. Способ установки зависит от типа информационной базы.

Файловая база (локальный путь)

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

# Файловая база (локальный путь)
# Windows
mcp-1c --install "C:\Users\Dev\InfoBases\ERP"
# Linux / macOS
mcp-1c --install "/home/dev/bases/erp"

Клиент-серверная база (удалённо через сеть)

Для клиент-серверной базы используйте флаг --server. Установка выполняется удалённо, прямой доступ к серверу СУБД не требуется:

# Клиент-серверная база (удалённо через сеть)
mcp-1c --install "server-1c\erp" --server --db-user Admin --db-password pass

Удалённая установка polling-клиента Расширенная

В Расширенной версии polling-клиент устанавливается аналогично, с флагом --install-polling:

# Удалённая установка polling-клиента
mcp-1c-advanced --install-polling "server-1c\erp" --server --db-user Admin --db-password pass
Что произойдёт при установке polling-клиента
  1. В базу 1С загрузится расширение "MCPPolling" (~30 КБ)
  2. Расширение добавит регламентное задание для связи с Go-сервером
  3. 1С будет периодически опрашивать Go-сервер на наличие задач
  4. Не требует Apache/IIS, 1С сама инициирует подключение

Формат строки подключения

  • server-name\database-name - стандартный формат
  • server-name:port\database-name - с нестандартным портом (по умолчанию 1541)
  • Требуется сетевой доступ к серверу приложений 1С
Важно: На машине, где выполняется команда --install или --install-polling, должна быть установлена платформа 1С (Конфигуратор / Designer). Если платформа не определяется автоматически, укажите путь к 1cv8.exe вручную через флаг --platform:
mcp-1c --install "server-1c\erp" --server \
  --platform "C:\Program Files\1cv8\8.3.25.1000\bin\1cv8.exe" \
  --db-user Admin --db-password pass

Если версия платформы не определяется автоматически из пути, укажите её явно: --platform-version 8.3.13. Минимальная поддерживаемая версия: 8.3.10.

Настройка AI-клиента

Добавьте MCP-1C в конфигурацию вашего AI-клиента.

Claude Desktop

Файл: %APPDATA%\Claude\claude_desktop_config.json (Windows) или ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)

{
  "mcpServers": {
    "1c": {
      "command": "C:\\path\\to\\mcp-1c.exe",
      "args": ["--base", "http://localhost:8080/hs/mcp-1c"]
    }
  }
}

Claude Code (CLI)

Файл: %USERPROFILE%\.claude.json (Windows) или ~/.claude.json (Linux/macOS). Альтернатива: команда claude mcp add.

{
  "mcpServers": {
    "1c": {
      "command": "C:\\path\\to\\mcp-1c-pro.exe",
      "args": ["--base", "http://localhost:8080/hs/mcp-1c"]
    }
  }
}

Cursor

Settings → MCP → Add Server

{
  "mcpServers": {
    "1c": {
      "command": "mcp-1c",
      "args": ["--base", "http://localhost:8080/hs/mcp-1c"]
    }
  }
}

VS Code + Copilot

Файл: .vscode/mcp.json в корне проекта

{
  "servers": {
    "1c": {
      "command": "mcp-1c",
      "args": ["--base", "http://localhost:8080/hs/mcp-1c"]
    }
  }
}

JetBrains IDE

Settings → Tools → AI Assistant → MCP Servers → Add

{
  "servers": {
    "1c": {
      "command": "mcp-1c",
      "args": ["--base", "http://localhost:8080/hs/mcp-1c"]
    }
  }
}

Первый запрос

Перезапустите AI-клиент и задайте вопрос о вашей конфигурации 1С. Примеры:

  • «Покажи структуру конфигурации моей базы 1С»
  • «Покажи все документы с реквизитом Организация»
  • «Напиши запрос: остатки товаров по складам за текущий месяц»
  • «Найди все использования регистра ТоварыНаСкладах»
  • «Объясни модуль менеджера документа РеализацияТоваровУслуг»

Конфигурация

MCP-1C поддерживает два режима подключения к базе 1С:

Файловая база

Прямое подключение к .1CD файлу через HTTP-сервис 1С.

mcp-1c --base http://localhost:8080/hs/mcp-1c

Клиент-серверная база

Через HTTP-сервис, опубликованный на сервере 1С (Apache/IIS).

mcp-1c --base http://server:8080/erp/hs/mcp-1c \
  --user Admin --password secret

Мультибазовость Расширенная

Расширенная версия позволяет подключить несколько баз 1С одновременно. Каждая база получает имя, по которому AI-ассистент выбирает нужную:

mcp-1c-advanced \
  --base dev=http://localhost:8080/hs/mcp-1c \
  --base prod=http://prod-server:8080/erp/hs/mcp-1c \
  --auth dev=Admin:pass123 \
  --auth prod=ReadOnly:readonly \
  --dump dev=/path/to/dev/dump \
  --default-base dev
Совет: Флаг --default-base задает базу по умолчанию. Если не указан, используется первая.

Аутентификация

Три способа задать учетные данные (по приоритету):

  1. 1.Флаги CLI: --user и --password (или --auth NAME=USER:PASS в мультибазовом режиме)
  2. 2.Переменные окружения: MCP_1C_USER и MCP_1C_PASSWORD
  3. 3.Без аутентификации (если HTTP-сервис 1С не требует авторизации)

Выгрузка конфигурации (--dump)

Для полнотекстового поиска по коду модулей (code_search(action: "text")) необходима выгрузка конфигурации в файлы:

# 1. Выгрузите конфигурацию из Конфигуратора:
# Конфигурация → Выгрузить конфигурацию в файлы...

# 2. Укажите путь при запуске:
mcp-1c --base http://localhost:8080/hs/mcp-1c \
  --dump "C:\dumps\erp"

# Принудительная перестройка индекса (игнорирует кэш):
mcp-1c --base http://localhost:8080/hs/mcp-1c \
  --dump "C:\dumps\erp" --reindex

Индекс строится в фоне (неблокирующий старт). MCP-сервер доступен сразу, поиск заработает после завершения индексации. Дисковый кэш ускоряет повторные запуски.

Long Polling Расширенная

Long polling позволяет подключить базу 1С без Apache/IIS. Go-сервер поднимает HTTP-эндпоинт, а 1С сама ходит за задачами через регламентное задание.

[Claude/Cursor] --stdio--> [mcp-1c-advanced] --HTTP :9090--> [1С polling client]
                                ^                                    |
                                |                                    v
                            TaskQueue <--- POST /result/{id} --- [Обработка запроса]
                                |
                            GET /poll (long poll, 25 сек)
Требования:
  • Платформа 1С 8.3.23+ (регламентные задания в расширениях)
  • Для автозапуска: клиент-серверный режим (1С Сервер + PostgreSQL/MS SQL)
  • В файловом режиме регламентные задания работают только при открытом клиенте 1С

Шаг 1. Установка расширения

Файловая база:

mcp-1c-advanced --install-polling /path/to/database \
  --poll-user myuser \
  --poll-password mypassword

Клиент-серверная база:

mcp-1c-advanced --install-polling "SERVER01\MyDatabase" \
  --server \
  --poll-user myuser \
  --poll-password mypassword \
  --db-user admin \
  --db-password dbpass

Что происходит при установке:

  1. 1.Находит платформу 1С автоматически
  2. 2.Устанавливает расширение MCP_Polling через DESIGNER (без GUI)
  3. 3.Расширение содержит модуль MCP_PollingClient и регламентное задание MCP_PollingJob
  4. 4.Авторестарт при сбое: 3 попытки, интервал 60 секунд
  5. 5.Настройки подключения встраиваются в код модуля
Параметр Описание
--poll-user / --poll-password Учетные данные Basic Auth между Go-сервером и 1С
--db-user / --db-password Пользователь базы 1С для DESIGNER
--server Серверный режим подключения
--platform /path Путь к платформе 1С (если не определяется автоматически)
--platform-version Версия платформы 1С (например 8.3.13). Определяется из пути, если не указана. Минимум: 8.3.10. По умолчанию: авто
--poll-server-url URL URL Go-сервера (по умолчанию http://localhost:9090)

Шаг 2. Настройка AI-клиента

Флаг --base объявляет базу данных в формате NAME=URL. Схема poll:// указывает MCP-серверу маршрутизировать запросы через очередь задач вместо прямого HTTP-подключения к 1С. Флаг --listen задает адрес HTTP-сервера, к которому 1С будет подключаться для получения задач. Оба флага обязательны: --base mydb=poll:// объявляет polling-базу, --listen :9090 запускает HTTP-сервер.

Файл: claude_desktop_config.json

{
  "mcpServers": {
    "mcp-1c": {
      "command": "/path/to/mcp-1c-pro",
      "args": [
        "--base", "mydb=poll://",
        "--listen", ":9090",
        "--poll-user", "myuser",
        "--poll-password", "mypassword"
      ]
    }
  }
}

Для Расширенной версии замените mcp-1c-pro на mcp-1c-advanced.

Шаг 3. Проверка

  1. 1.Запустите AI-клиент - MCP-сервер стартует и слушает :9090
  2. 2.Регламентное задание автоматически начинает polling
  3. 3.В журнале регистрации 1С: "MCP.Polling: polling loop started"
  4. 4.Проверка здоровья: curl http://localhost:9090/health

HTTP-эндпоинты

Эндпоинт Метод Описание
/poll GET Long poll, таймаут 25 сек. 200 + JSON при наличии задачи, 204 если задач нет
/result/{id} POST Результат выполнения задачи. 200 при успехе, 404 если задача не найдена
/health GET Проверка здоровья сервера. Без авторизации
Важно: /poll и /result требуют Basic Auth (--poll-user/--poll-password).

Сравнение режимов

Критерий HTTP-сервис (стандартный) Long Polling
Мин. версия платформы 8.3.10 8.3.23
Требует Apache/IIS Да Нет
Файловый режим Работает всегда Только при открытом клиенте 1С
Автоматический запуск После публикации Клиент-серверный: да, файловый: нет
Задержка ~50 мс До 25 сек на первый запрос, далее мгновенно
Настройка Сложнее (Apache/IIS + публикация) Одна команда

Отладка

  • Журнал регистрации 1С: события с источником "MCP.Polling"
  • Проверка здоровья: curl http://localhost:9090/health
  • Ручная проверка polling: curl -u user:pass http://localhost:9090/poll --max-time 30
  • Регламентное задание: Администрирование → Регламентные и фоновые задания → MCP_PollingJob
  • Файловый режим: регламентные задания работают только при открытом клиенте 1С

Инструменты Открытой версии

9 отдельных инструментов, доступных в бесплатной версии mcp-1c. Каждый инструмент вызывается AI-клиентом по имени.

В Открытой версии каждый инструмент имеет собственное имя и параметры (как показано ниже). В Расширенной и Профессиональной версиях эти возможности объединены в консолидированные инструменты с параметром action (code_read, code_search, code_execute, system и др.).

get_metadata_tree

Открытая

Дерево метаданных конфигурации

Список всех объектов конфигурации по категориям: справочники, документы, регистры, перечисления, обработки и т.д. Без фильтра возвращает сводку (категории и количество), с фильтром — полный перечень объектов категории. Вызывается первым при работе с незнакомой конфигурацией.

Параметры:

  • filter (необязательный) - категория для фильтрации: Справочники, Документы, РегистрыНакопления, ОбщиеМодули и др.

get_object_structure

Открытая

Реквизиты и структура объекта

Реквизиты, табличные части, измерения, ресурсы, значения перечисления и типы полей объекта метаданных. Возвращает точные имена реквизитов, табличных частей и значений перечислений для запросов и кода. Для Enum дополнительно возвращается список значений перечисления.

Параметры:

  • object_type (обязательный) - тип объекта: Catalog, Document, Enum, InformationRegister, AccumulationRegister и др.
  • object_name (обязательный) - имя объекта, например РеализацияТоваровУслуг

execute_query

Открытая

Выполнить запрос к данным

Выполняет запрос на языке 1С (только ВЫБРАТЬ/SELECT — безопасно для рабочих баз) и возвращает данные: элементы справочников, документы, остатки, обороты, сведения из регистров. Поддерживает параметры через &Имя.

Параметры:

  • query (обязательный) - текст запроса (только ВЫБРАТЬ/SELECT)
  • limit (необязательный) - максимум строк результата (по умолчанию 100, максимум 1000)
  • parameters (необязательный) - параметры запроса в виде пар ключ-значение (имя без амперсанда)

validate_query

Открытая

Проверка синтаксиса запроса

Проверяет синтаксис запроса 1С без выполнения и находит ошибки в ВЫБРАТЬ/SELECT. Рекомендуется вызывать перед execute_query.

Параметры:

  • query (обязательный) - текст запроса для проверки

search_code

Открытая

Поиск по коду модулей

Полнотекстовый поиск по коду всех модулей конфигурации. Три режима: smart (полнотекстовый с ранжированием BM25, по умолчанию), regex (регулярные выражения), exact (точная подстрока). Поддерживает BSL-синонимы: поиск по английским именам находит русские и наоборот.

Параметры:

  • query (обязательный) - поисковый запрос
  • mode (необязательный) - smart, regex или exact
  • category (необязательный) - фильтр по типу метаданных (Документ, ОбщийМодуль)
  • module (необязательный) - фильтр по типу модуля (МодульОбъекта, МодульМенеджера)
  • limit (необязательный) - максимум результатов (по умолчанию 50, максимум 500)

Требует: --dump (путь к выгрузке конфигурации DumpConfigToFiles)

get_form_structure

Открытая

Структура формы объекта

Структура управляемой формы: элементы интерфейса, команды, кнопки и обработчики событий. Состав элементов и обработчики берутся из Form.xml выгрузки конфигурации; без --dump возвращаются только имя и заголовок формы.

Параметры:

  • object_type (обязательный) - тип объекта: Document, Catalog, DataProcessor и др.
  • object_name (обязательный) - имя объекта метаданных
  • form_name (необязательный) - имя формы (без него возвращается первая найденная)

Полная структура требует: --dump

get_event_log

Открытая

Журнал регистрации

Чтение журнала регистрации 1С — лог ошибок, действий пользователей и системных событий. Фильтрация по дате, уровню важности и пользователю.

Параметры (все необязательные):

  • start_date, end_date - период в формате ISO 8601
  • level - уровень важности: Ошибка, Предупреждение, Информация, Примечание
  • user - имя пользователя 1С для фильтрации
  • limit - максимум записей (по умолчанию 50, максимум 500)

get_configuration_info

Открытая

Информация о конфигурации

Общая информация о базе 1С: название конфигурации, версия, поставщик, версия платформы, режим работы (файловый / клиент-серверный). Полезно вызвать первым делом, чтобы понять, с какой конфигурацией работаете. Параметров нет.

bsl_syntax_help

Открытая

Справочник функций языка 1С

Справка по 180 встроенным функциям, методам типов и объектным паттернам языка 1С (BSL): строки, числа, даты, коллекции, файлы, HTTP, XML/JSON, транзакции, методы ТаблицаЗначений/Массив/Структура/Соответствие/Запрос и др. Возвращает синтаксис, параметры и пример использования.

Параметры:

  • query (обязательный) - название функции на русском или английском, например СтрНайти или StrFind

MCP-промпты

Открытая версия также регистрирует готовые MCP-промпты — заранее заготовленные сценарии, которые AI-клиент подставляет в диалог. В Claude Desktop они доступны через меню «+» (или иконку слэш-команд) рядом с полем ввода, в Claude Code — командой /mcp (промпты подключённого MCP-сервера). Промпт разворачивается в готовую инструкцию и сам вызывает нужные инструменты.

  • review_module - ревью кода модуля: анализ на ошибки, нарушения стандартов 1С, производительность, читаемость и работу с транзакциями. Аргументы: object_type, object_name
  • find_duplicates - поиск дублирующегося и избыточного кода в модулях объекта с предложениями по рефакторингу. Аргументы: object_type, object_name
  • explain_object - объяснение назначения и устройства объекта: какие данные хранит, с чем связан, какую бизнес-логику содержат его модули. Аргументы: object_type, object_name

Сервер регистрирует и другие промпты (написание проведения, оптимизация запроса, объяснение конфигурации, анализ ошибки, помощь с отчётом, справочные промпты по синтаксису запросов и навигации по метаданным).

Инструменты Расширенной версии

6 консолидированных инструментов, доступных по подписке

В Расширенной версии возможности Открытой объединены в консолидированные инструменты с параметром action (code_read, code_search, code_execute, system). К ним добавлены два новых инструмента — code_analyze и code_generate — и новые действия в уже существующих инструментах:

code_analyze

Расширенная

Анализ и проверка кода

Действия:

  • action: "explain" - глубокий статический анализ кода BSL с 6 анализаторами: сложность, ошибки, стиль, производительность, безопасность, совместимость
  • action: "check" - проверка кода BSL на типичные ошибки и антипаттерны
  • action: "compatibility" - анализ совместимости с версиями платформы 1С, breaking changes, матрица совместимости

code_generate

Расширенная

Генерация и оптимизация кода

Действия:

  • action: "query" - генерация запросов 1С по текстовому описанию с учетом структуры конфигурации
  • action: "print_form" - генерация кода печатных форм: шапка, табличная часть, итоги
  • action: "async_convert" - преобразование синхронных вызовов BSL в асинхронные
  • action: "optimize_query" - статический анализ запросов на 15 антипаттернов производительности

Дополнительные действия в инструментах Открытой версии

  • code_read(action: "context") - умный контекст: связанные объекты, регистры, модули, подписки на события
  • code_search(action: "syntax_help") - справка по функциям и типам платформы из файлов синтакс-помощника (.hbk)
  • code_execute(action: "code") - безопасное выполнение произвольного кода BSL в контексте базы 1С

Расширения .cfe

Расширенная

Поиск и чтение кода расширений

Расширенная версия автоматически обнаруживает установленные расширения конфигурации (.cfe) и включает их модули в code_search и code_read. Результаты расширений помечаются префиксом [Расш].

Инструменты Профессиональной версии

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

bulk_analyze

Профессиональная

Массовый анализ кодовой базы 1С

Комплексный анализ всей кодовой базы: антипаттерны, дубли кода, мертвый код, аудит безопасности, метрики качества. Требует предварительного построения кэша командой --build-bulkanalysis.

Действия:

  • action: "summary" - сводка по всей кодовой базе: количество модулей, находок по категориям, общий балл техдолга
  • action: "findings" - антипаттерны и ошибки кода (30 правил): неоптимальные запросы, утечки ресурсов, устаревшие конструкции
  • action: "duplicates" - дубли кода (MinHash + LSH): похожие фрагменты в разных модулях с процентом совпадения
  • action: "deadcode" - мертвый код: неиспользуемые процедуры, переменные, параметры
  • action: "security" - аудит безопасности BSL (11 правил SEC): SQL-инъекции, небезопасные вызовы, утечки данных
  • action: "metrics" - метрики качества: LOC, цикломатическая сложность, глубина вложенности, балл техдолга (0-100)
  • action: "trends" - динамика показателей между запусками анализа

Параметры:

  • cvss_format - формат отчёта при action=findings + category=security: auto (по умолчанию, группировка по CVSS-критичности), grouped (всегда CVSS-группировка), flat (плоский список)

Требует: --dump + --build-bulkanalysis (предварительное построение кэша)

code_analyze → dependency_graph

Профессиональная

Граф зависимостей объектов

Визуализация связей между модулями конфигурации. Требует предварительного построения кэша командой --build-depgraph.

Параметры:

  • object (обязательный) - имя объекта метаданных для анализа зависимостей
  • direction - направление обхода: reverse (кто зависит от объекта), forward (от кого зависит объект), both
  • depth - глубина обхода графа (1-3)
  • format - формат вывода: text, json, mermaid

Требует: --dump + --build-depgraph (предварительное построение кэша)

Архитектурная визуализация

Профессиональная

Mermaid-диаграммы архитектуры конфигурации

Команда --build-archviz строит Mermaid-диаграммы трёх уровней архитектуры: иерархия подсистем и их вложенность, связи документов с регистрами накопления, сведений и бухгалтерии, бизнес-процессы с точками маршрута и BSL-обработчиками.

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

Пример запуска:

mcp-1c-advanced --build-archviz \
  --arch-viz all \
  --output-dir ./diagrams \
  --dump /path/to/dump

Параметры:

  • --build-archviz запустить генерацию диаграмм и выйти
  • --arch-viz режим: subsystems, doc-reg, bp или all
  • --output-format формат: mermaid, svg или json (по умолчанию mermaid)
  • --output-dir каталог для записи файлов (обязателен при --arch-viz all)
  • --filter-subsystem ограничить рамки одной подсистемой (рекурсивно по вложенным)
  • --filter-category ограничить тип объектов (Документ, РегистрНакопления и т. п.)
  • --max-nodes максимум узлов на диаграмме (по умолчанию 100)
  • --show-handlers показывать BSL-обработчики на диаграммах бизнес-процессов (по умолчанию включено)

При ответе свыше 1 MiB (env MCP_ARCHVIZ_BUDGET_BYTES) сервер сохраняет артефакт в локальный кэш и возвращает manifest {path, size_bytes, sha256, mime_type} — AI-клиент читает файл напрямую.

Требует: --dump

Настройка LLM провайдера

Профессиональная

Учётные данные YandexGPT или GigaChat для LLM-функций

Четыре функциональности Профессиональной редакции используют внешние LLM API для обогащения результатов: Автогенерация документации (--build-autodoc), Генерация тестов (--build-testgen), Генерация .epf обработок (--build-epfgen) и Навигация по типовым конфигурациям (--build-typicalconfigs).

Поддерживаются два провайдера: YandexGPT (по умолчанию, выбирается флагом --autodoc-provider yandexgpt) и GigaChat (--autodoc-provider gigachat). Учётные данные читаются из переменных окружения и должны быть заданы до запуска.

Переменные окружения:

# YandexGPT (по умолчанию)
export YANDEXGPT_API_KEY=AQVN...
export YANDEXGPT_FOLDER_ID=b1g...

# GigaChat
export GIGACHAT_CLIENT_ID=...
export GIGACHAT_CLIENT_SECRET=...

Где взять учётные данные:

  • YandexGPT сервисный аккаунт Yandex Cloud с ролью ai.languageModels.user, API-ключ выпускается в консоли Yandex Cloud, идентификатор каталога указан там же на странице каталога
  • GigaChat регистрация в портале разработчика Сбера, после этого выпускаются Client ID и Client Secret для авторизации

Если переменные не заданы, бинарник завершит работу с ошибкой вида --autodoc-provider=yandexgpt требует переменные окружения YANDEXGPT_API_KEY и YANDEXGPT_FOLDER_ID (или аналогично для GigaChat).

Запуск без LLM:

  • --testgen-llm-disable генерация только скелетов YAxUnit/Vanessa без LLM-комментариев
  • --epfgen-llm-disable генерация бандлов .epf без LLM-обогащения
  • --typicalconfigs-llm-disable индексация подсистем без описаний (Markdown-файлы будут пустыми)
  • У --build-autodoc отдельного флага отключения LLM нет: автогенерация документации полностью построена на ответах модели и без API-ключей не запускается

Автогенерация документации

Профессиональная

Markdown-описания объектов через YandexGPT или GigaChat

Команда --build-autodoc формирует отдельный Markdown-файл для каждого объекта конфигурации с описанием назначения, реквизитов, табличных частей и связей с другими объектами.

Поддерживаются провайдеры YandexGPT и GigaChat. Результаты кэшируются: повторный запуск регенерирует только изменившиеся объекты, если не задан --autodoc-regen.

Пример запуска:

mcp-1c-advanced --build-autodoc \
  --dump /path/to/dump \
  --autodoc-out ./docs/auto \
  --autodoc-provider yandexgpt

Параметры:

  • --build-autodoc запустить генерацию документации и выйти
  • --autodoc-out каталог для autodoc Markdown-файлов (по умолчанию docs/auto)
  • --autodoc-provider LLM-провайдер: yandexgpt или gigachat
  • --autodoc-model модель провайдера (например, yandexgpt-lite)
  • --autodoc-kinds виды объектов через запятую: all либо Document,Catalog,AccumulationRegister,InformationRegister,Report,DataProcessor
  • --autodoc-regen игнорировать кэш и перегенерировать все объекты
  • --autodoc-concurrency размер пула воркеров (по умолчанию 4)
  • --autodoc-max-input-tokens лимит входных токенов на объект (модуль усекается, по умолчанию 6000)
  • --autodoc-rps лимит запросов в секунду к LLM-провайдеру (по умолчанию 5.0)

При ответе свыше 1 MiB (env MCP_AUTODOC_BUDGET_BYTES) сервер сохраняет артефакт в локальный кэш и возвращает manifest {path, size_bytes, sha256, mime_type} — AI-клиент читает файл напрямую.

Требует: --dump + API-ключ выбранного LLM-провайдера (см. Настройка LLM провайдера)

Генерация тестов

Профессиональная

Автоматическая генерация YAxUnit и Vanessa-тестов

Команда --build-testgen анализирует BSL-модули конфигурации и формирует scaffold-тесты YAxUnit для экспортированных процедур и функций (правила TG001-TG019), Vanessa .feature сценарии для taint-находок с критичностью CVSS не ниже Medium (правило TG020), а также файл manifest.json с итогами прогона.

Доступна как разовая генерация (--build-testgen) либо в режиме MCP-сервера (--enable-testgen) для интерактивных запросов от AI-ассистента.

Пример запуска:

mcp-1c-advanced --build-testgen \
  --dump /path/to/dump \
  --testgen-framework auto \
  --testgen-output ./tests

Параметры:

  • --build-testgen запустить разовую генерацию тестов и выйти
  • --enable-testgen включить testgen в режиме MCP-сервера
  • --testgen-output каталог для записи тестовых файлов (по умолчанию <dump>/.testgen-output)
  • --testgen-framework фреймворк: yaxunit, vanessa, both или auto (выбирается по типу объекта)
  • --testgen-rules подмножество правил TG001..TG020 через запятую
  • --testgen-regen игнорировать кэш и перегенерировать все тесты
  • --testgen-taint-regressions эмитировать Vanessa-регрессии по taint-находкам (правило TG020)
  • --testgen-include-bsp генерировать тесты для модулей БСП/SSL
  • --testgen-concurrency число параллельных воркеров (по умолчанию min(CPU, 8))
  • --testgen-llm-disable отключить обогащение через LLM (работает без API-ключей)
  • --testgen-emit-sarif путь для SARIF 2.1.0 отчёта по testgen
  • --testgen-audit-trail путь к audit log testgen (по умолчанию <dump>/.testgen-audit.log)
  • --testgen-vendor-baseline путь к vendor-baseline дампу для фильтрации стандартных модулей

Требует: --dump + API-ключ LLM-провайдера или флаг --testgen-llm-disable (см. Настройка LLM провайдера)

Генерация .epf обработок

Профессиональная

Designer-compatible XML+BSL бандлы внешних обработок 1С

Команда --build-epfgen формирует Designer-compatible XML+BSL бандлы для всех 6 видов внешних обработок 1С: ПечатнаяФорма, ЗаполнениеОбъекта, СозданиеСвязанныхОбъектов, Отчет, ДополнительнаяОбработка, ДополнительныйОтчет. Каждый бандл соответствует БСП-контракту и готов к загрузке Конфигуратором.

Опционально формируются скрипты pack.cmd / pack.sh для сборки бинарного .epf. В config-aware режиме при наличии Configuration.xml LLM может предлагать имена реквизитов, согласованные с метаданными целевой конфигурации.

Доступна как разовая генерация (--build-epfgen) либо в режиме MCP-сервера (--enable-epfgen) для интерактивных запросов от AI-ассистента.

Пример запуска:

mcp-1c-advanced --build-epfgen \
  --epfgen-spec ./bundles.yaml \
  --epfgen-pack

Параметры:

  • --build-epfgen запустить разовую генерацию бандлов и выйти
  • --enable-epfgen включить epfgen в режиме MCP-сервера
  • --epfgen-spec путь к YAML/JSON-файлу со списком бандлов (обязательный для --build-epfgen)
  • --epfgen-output каталог для записи бандлов и manifest.json
  • --epfgen-config-path путь к Configuration.xml для config-aware режима
  • --epfgen-regen игнорировать кэш и перегенерировать все бандлы
  • --epfgen-pack дополнительно генерировать pack.cmd / pack.sh для сборки .epf через Конфигуратор
  • --epfgen-emit-tests эмитировать sibling YAxUnit-тесты через testgen API
  • --epfgen-suggest-attrs LLM-подсказки имён реквизитов (требует config-aware + LLM)
  • --epfgen-concurrency число параллельных воркеров (по умолчанию min(CPU, 8))
  • --epfgen-llm-disable отключить обогащение через LLM (работает без API-ключей)
  • --epfgen-emit-sarif путь для SARIF 2.1.0 отчёта
  • --epfgen-audit-trail путь к epfgen audit log
  • --epfgen-platform-version целевая версия 1С (по умолчанию 8.3.10); контролирует версию формата MDClasses XML

Параметр rule_id (в YAML/JSON-спецификации бандла, а также в MCP-вызове epfgen.generate) принимает идентификаторы из набора EG001-EG020 (полный список встроенных правил).

Требует: --epfgen-spec для разовой генерации + API-ключ LLM-провайдера или флаг --epfgen-llm-disable (см. Настройка LLM провайдера)

Навигация по типовым конфигурациям

Профессиональная

Автоматическая классификация семейства типовой и индекс подсистема ↔ объект

Команда --build-typicalconfigs определяет семейство типовой конфигурации по сигнатурам метаданных и строит двусторонний индекс подсистема ↔ объект для AI-навигации. Поддерживается распознавание основных линеек: Бухгалтерия предприятия 3.0, Зарплата и управление персоналом 3.1, Управление торговлей 11, Розница, Комплексная автоматизация и ERP.

Объекты классифицируются по правилам TC001-TC020 на shared (БСП/SSL), bp_specific, zup_specific, ut_specific и retail_specific. Поверх классификации детектируются кастомные доработки заказчика поверх типовой конфигурации.

В результате формируется набор артефактов: index.json (подсистема → объекты), reverse.json (объект → подсистемы), manifest.json с метаданными о версии платформы и обнаруженном семействе, а также по одному .md файлу на каждую подсистему с LLM-обогащённым описанием.

В режиме MCP-сервера (--enable-typicalconfigs) AI-ассистент получает доступ к единому tool typicalconfigs с действиями detect (определить семейство), subsystems (список подсистем), lookup (найти объект по имени), reverse_lookup (из объекта в подсистемы) и extension_points (точки расширения).

Пример запуска (разовая индексация):

mcp-1c-advanced --build-typicalconfigs \
  --typicalconfigs-dump-path ./dump \
  --typicalconfigs-output ./typicalconfigs-output \
  --typicalconfigs-llm-disable

Пример запуска (MCP-сервер с включённой навигацией):

mcp-1c-advanced --enable-typicalconfigs \
  --base main=https://erp.example.com \
  --dump main=./dump

Параметры:

  • --build-typicalconfigs запустить разовую индексацию и выйти
  • --enable-typicalconfigs включить typicalconfigs в режиме MCP-сервера
  • --typicalconfigs-output каталог для index.json, reverse.json, manifest.json и per-subsystem .md файлов
  • --typicalconfigs-dump-path путь к dump-каталогу (обязателен при --build-typicalconfigs)
  • --typicalconfigs-regen игнорировать кэш и регенерировать индекс
  • --typicalconfigs-llm-disable отключить обогащение через LLM (описания подсистем останутся пустыми)
  • --typicalconfigs-concurrency размер пула воркеров (по умолчанию min(CPU, 8), значение 0 означает auto)
  • --typicalconfigs-emit-sarif путь для SARIF 2.1.0 отчёта
  • --typicalconfigs-audit-trail путь к audit log по операциям typicalconfigs
  • --typicalconfigs-max-subsystems cap для очень больших дампов (по умолчанию 500); подсистемы свыше cap получают статус truncated
  • --typicalconfigs-platform-version целевая версия 1С (по умолчанию 8.3.10)

Требует: API-ключ LLM-провайдера или флаг --typicalconfigs-llm-disable (см. Настройка LLM провайдера)

Подавление проверок прагмами typconf:ignore

Чтобы выборочно отключить классификацию или проверки typicalconfigs на уровне отдельной строки или процедуры, используйте комментарии-прагмы в BSL-коде:

// Отключить проверку для конкретной строки:
ВыполнитьСлужебнуюЛогику(); // typconf:ignore

// Отключить проверки в пределах процедуры целиком:
Процедура КастомнаяОбработка() Экспорт
    // typconf:ignore
    // ...тело процедуры...
КонецПроцедуры

Прагма typconf:ignore действует только в области, где она объявлена (на текущей строке или в текущей процедуре) и не отключает классификацию объекта в целом.

CFEDiff — структурный diff расширений

Профессиональная

Сравнение двух версий расширения .cfe с typed-разбором BSL, форм и метаданных

Замена ручному diff или git-diff бинарных .cfe (которые показывают только «файл изменён»). CFEDiff распаковывает оба расширения, разбирает структуру и выдаёт Markdown-отчёт с детальным сравнением BSL-кода, форм и метаданных.

Для кого:

  • 1С-разработчики, работающие с расширениями типовых конфигураций (yaxunit, BIA-Standard и т. д.)
  • DevOps-команды с CI/CD pipeline для расширений
  • Team leads на code review для PR с изменениями .cfe

Способ 1. Через Claude Code (MCP-инструмент)

В режиме MCP-сервера действие code_review.review_extension принимает пути к двум .cfe и возвращает Markdown-отчёт прямо в чате.

Пример вызова:

{
  "action": "review_extension",
  "base_path": "/repo/master/MyExt.cfe",
  "head_path": "/repo/feature/MyExt.cfe",
  "format": "markdown"
}

Способ 2. CLI для CI и pre-commit

Подкоманда review бинарника mcp-1c-pro запускается из CI или git-hook:

mcp-1c-pro review base.cfe head.cfe --format markdown -o diff.md
echo "exit code: $?"  # 0 = no diff, 1 = diff found, 2 = error

Подходит для:

  • pre-commit hook — блокирует PR, если BSL-diff превышает порог
  • GitHub Actions / GitLab CI — оставляет рендер diff комментарием на PR
  • daily backup-diff — что изменилось со вчера

Готовый шаблон GitHub Actions см. в docs/cfediff/example-workflow.yml репозитория mcp-1c-advanced.

Опциональные флаги

  • --format markdown|json|text формат вывода (по умолчанию markdown)
  • --ignore-* (11 флагов) фильтры технического шума: trailing whitespace, line endings, BOM, UUID-порядок и т. д.
  • --no-watermark убрать водяной знак Trial (доступно только для verified-paid лицензий)
  • --diagnostic добавить диагностический zip-пакет (для тикетов поддержки)
  • --bug-report PII-safe tar.gz для GitHub-issue submission
  • --enable-ibcmd экспериментальная валидация через ibcmd (8.3.27+, опционально)

Что внутри Markdown-отчёта

# CFEDiff
**Base:** path/to/base.cfe (SHA-256 ...)
**Head:** path/to/head.cfe (SHA-256 ...)

## Сводка
- Добавлено: 8 объектов
- Удалено:   1 объект
- Изменено:  9 объектов
- BSL-строк (+/-): 7065 / 238

## Изменённые объекты

### CommonModule РГП_ГлобальныйПоискВызовСервера
@@ -1,20 +1,122 @@
+// @skip-check bsl-legacy-check-pragma-for-unused-method - Баг ЕДТ
 #Область ОбработчикиСобытий
 ...

## Активные фильтры
- IgnoreTrailingWhitespace
- IgnoreLineEndings
...

Поддерживаемые форматы экспорта

CFEDiff умеет читать оба формата:

  • Canonical Designer экспорт через 1С Designer DESIGNER /DumpCfg (8.3.x)
  • ibcmd-Mac/Linux экспорт через ibcmd config export (8.3.27+)

Лицензирование

  • Trial (14 дней) полный функционал + watermark с датой истечения лицензии
  • Pro / verified-paid чистый вывод без watermark, флаг --no-watermark доступен
  • Advanced (без Pro) запуск review вернёт subcommand requires Pro edition + exit 2

Текущие ограничения

  • Structural diff форм для расширений, выгруженных через ibcmd config export, использует hash-fallback (изменилась форма / не изменилась). Детальный структурный diff форм работает на canonical-выгрузке из Designer.
  • Опциональная ibcmd-валидация (флаг --enable-ibcmd, по умолчанию выключена) — это best-effort слой сверки через официальную CLI ibcmd. Сейчас она всегда завершается информационным предупреждением (IBCMD_NOT_AVAILABLE) и не выполняет canonical-сравнение через config export; результат diff от неё не зависит и не блокируется (exit code не меняется).
  • Foreign-UUID naming некоторые ChildObjects (CommonModule, заимствованные из других расширений) отображаются как UUID, а не по имени.

Цена: см. тарифы для актуальной стоимости Pro-лицензии.

Подкоманда review. Требует Pro или Trial-лицензию.

Корпоративная редакция

Скоро

Для компаний. Сейчас в разработке — доступ по запросу.

Корпоративная редакция включает все возможности Профессиональной и добавляет функции для командного и корпоративного использования:

  • Все из Профессиональной
  • Корпоративные возможности
  • Trust Layer — маскирование персональных данных
  • Аудит-лог и мониторинг
  • On-premise deployment
  • Поддержка с SLA

Ориентировочная стоимость и состав уточняются. Актуальные условия — на странице тарифов.

Связаться по запросу

Справочник CLI

Флаги Открытой версии mcp-1c

Флаг По умолчанию Описание
--base <URL> http://localhost:8080/hs/mcp-1c URL HTTP-сервиса 1С. Env: MCP_1C_BASE_URL
--user <имя> - Пользователь HTTP-сервиса. Env: MCP_1C_USER
--password <пароль> - Пароль HTTP-сервиса. Env: MCP_1C_PASSWORD
--max-response-size <МиБ> 128 Максимальный размер ответа 1С в мебибайтах (MiB). Более крупный ответ отклоняется с понятной ошибкой. Увеличьте лимит для больших баз с расширениями. Env: MCP_1C_MAX_RESPONSE_SIZE
--request-timeout <сек> 300 Таймаут HTTP-запроса к 1С в секундах. Увеличьте, если передача очень большого ответа (например, расширений крупной базы) не успевает завершиться. Env: MCP_1C_REQUEST_TIMEOUT
--dump <путь> - Путь к выгрузке конфигурации (DumpConfigToFiles). Включает code_search
--reindex false Принудительная перестройка поискового индекса (игнорирует кэш)
--install <путь> - Установить расширение в базу 1С по указанному пути
--server false Режим клиент-серверной базы: --install принимает строку сервер\база
--platform <путь> авто Путь к исполняемому файлу платформы 1С (автоопределение, если не указан)
--platform-version <версия> авто Версия платформы 1С (например 8.3.13), определяется автоматически из пути. Минимум: 8.3.10
--db-user <имя> - Пользователь базы 1С для DESIGNER (режим --install)
--db-password <пароль> - Пароль базы 1С для DESIGNER (режим --install)
--cache-dir <путь> авто Каталог для кэша индекса и логов (по умолчанию — системный каталог кэша). Env: MCP_1C_CACHE_DIR
--quiet false Подавить весь вывод в stderr даже в терминале. Имеет приоритет над --verbose. Также включается через env MCP_1C_NO_TTY=1
--verbose false Принудительный подробный вывод в stderr, даже когда stdin — это пайп (полезно для отладки MCP-клиента). Переопределяется флагом --quiet
--debug false Подробное логирование в файл (~/.cache/mcp-1c/server.log). В режиме терминала также отключает индикатор прогресса

Флаги Расширенной версии mcp-1c-advanced

Включает все флаги Открытой версии, плюс следующие:

Флаг По умолчанию Описание
Мультибазовость
--base NAME=URL - Подключение базы с именем (повторяемый). Или просто URL для single-base режима
--auth NAME=USER:PASS - Учетные данные для именованной базы (повторяемый)
--dump NAME=PATH - Путь к выгрузке для именованной базы (повторяемый)
--reindex NAME - Перестроить индекс для именованной базы (повторяемый)
--default-base <NAME> первая Имя базы по умолчанию (если не указано -- первая --base)
Long Polling
--listen <addr> - Запустить HTTP-сервер для long polling (например, :9090)
--poll-user <имя> - Basic auth логин для polling-эндпоинта
--poll-password <пароль> - Basic auth пароль для polling-эндпоинта
--poll-timeout <dur> 30s Таймаут ожидания ответа от 1С в polling-режиме
Polling-клиент (установка в 1С)
--install-polling <путь> - Установить polling-клиент в базу 1С. С --server поддерживает удалённую установку в клиент-серверную базу
--export-polling <файл> - Экспортировать код polling-клиента в BSL-файл
--poll-server-url <URL> http://localhost:9090 URL Go-сервера для настроек polling-клиента
Лицензирование
--activate <ключ> - Активировать лицензию на данной машине
--deactivate false Деактивировать лицензию (освободить слот устройства)
--license-status false Показать статус лицензии (ключ, срок, издание)
Синтаксис
--update-syntax false Разобрать .hbk файлы платформы и сохранить данные синтаксиса в кэш JSON
--debug false Подробное логирование в файл (~/.cache/mcp-1c-advanced/server.log)
Информация
--version false Вывести версию бинарника и атрибуцию (BSL-LS) и выйти

Флаги Профессиональной версии mcp-1c-pro

Включает все флаги Расширенной версии, плюс следующие:

Флаг По умолчанию Описание
Семантический поиск
--enable-semantic false Включить векторный поиск (строит индекс, требует больше RAM)
Граф зависимостей
--enable-depgraph false Включить анализ графа зависимостей
--build-depgraph false Построить кэш графа зависимостей и выйти
Массовый анализ
--enable-bulkanalysis false Включить массовый анализ кода
--build-bulkanalysis false Построить кэш массового анализа и выйти
--vendor-baseline <путь> - Путь к чистому дампу вендора для фильтрации только доработанных модулей
CI/CD интеграция
--ci false CI режим: JSON вывод в stdout, код возврата по quality gates
--json false Вывести полные результаты анализа как JSON
--fail-on-errors <N> -1 Код возврата 1 если количество ошибок превышает порог
--fail-on-debt-score <N> -1 Код возврата 1 если техдолг модуля превышает порог
Обновление типовых конфигураций
--update-helper false Запустить сравнение конфигураций и выйти. Two-way если --vendor-old не указан, three-way иначе. При ответе свыше 1 MiB (env MCP_UPDATE_HELPER_BUDGET_BYTES) сервер сохраняет артефакт в локальный кэш и возвращает manifest {path, size_bytes, sha256, mime_type} — AI-клиент читает файл напрямую
--vendor-old <путь> - Путь к дампу старой типовой (не указывать для two-way diff)
--vendor-new <путь> - Путь к дампу новой типовой (или конфигурация B для two-way)
--output <путь> stdout Путь к файлу результатов
--format <формат> markdown Формат отчета: markdown, text, json, html, pdf
--report <путь> - Путь к файлу отчета (для --build-bulkanalysis)
Архитектурная визуализация
--build-archviz false Запустить генерацию Mermaid-диаграмм и выйти
--arch-viz <режим> subsystems Режим: subsystems, doc-reg, bp или all
--output-format <формат> mermaid Формат вывода: mermaid, svg или json
--output-dir <путь> - Каталог для записи файлов (обязателен при --arch-viz all)
--filter-subsystem <имя> - Ограничить рамки одной подсистемой (рекурсивно)
--filter-category <тип> - Ограничить тип объектов (Документ, РегистрНакопления и т. п.)
--max-nodes <N> 100 Максимум узлов на одной диаграмме
--show-handlers true Показывать BSL-обработчики на диаграммах бизнес-процессов
Автогенерация документации
--build-autodoc false Запустить генерацию Markdown-документации и выйти
--autodoc-out <путь> docs/auto Каталог для autodoc Markdown-файлов
--autodoc-provider <имя> - LLM-провайдер: yandexgpt или gigachat
--autodoc-model <имя> - Модель провайдера (например, yandexgpt-lite)
--autodoc-kinds <список> all Виды объектов через запятую: all или подмножество Document,Catalog,Report,DataProcessor
--autodoc-regen false Игнорировать кэш и перегенерировать все объекты
--autodoc-concurrency <N> 4 Размер пула воркеров для autodoc
--autodoc-max-input-tokens <N> 6000 Лимит входных токенов на объект (модуль усекается)
--autodoc-rps <N> 5.0 Лимит запросов в секунду к LLM-провайдеру
Генерация тестов
--build-testgen false Запустить разовую генерацию тестов и выйти
--enable-testgen false Включить testgen в режиме MCP-сервера
--testgen-output <путь> <dump>/.testgen-output Каталог для записи тестовых файлов
--testgen-framework <имя> auto Фреймворк: yaxunit, vanessa, both или auto
--testgen-rules <список> - Подмножество правил TG001..TG020 через запятую
--testgen-regen false Игнорировать кэш и перегенерировать все тесты
--testgen-taint-regressions false Эмитировать Vanessa-регрессии по taint-находкам (правило TG020)
--testgen-include-bsp false Генерировать тесты для модулей БСП/SSL
--testgen-concurrency <N> min(CPU, 8) Число параллельных воркеров
--testgen-llm-disable false Отключить обогащение через LLM (работает без API-ключей)
--testgen-emit-sarif <путь> - Путь для SARIF 2.1.0 отчёта по testgen
--testgen-audit-trail <путь> <dump>/.testgen-audit.log Путь к audit log testgen
--testgen-vendor-baseline <путь> - Путь к vendor-baseline дампу для фильтрации стандартных модулей
Генерация .epf обработок
--build-epfgen false Запустить разовую генерацию бандлов и выйти
--enable-epfgen false Включить epfgen в режиме MCP-сервера
--epfgen-spec <путь> - YAML/JSON со списком бандлов (обязательный для --build-epfgen)
--epfgen-output <путь> - Каталог для бандлов и manifest.json
--epfgen-config-path <путь> - Путь к Configuration.xml для config-aware режима
--epfgen-regen false Игнорировать кэш и перегенерировать все бандлы
--epfgen-pack false Дополнительно генерировать pack.cmd / pack.sh
--epfgen-emit-tests false Эмитировать sibling YAxUnit-тесты через testgen API
--epfgen-suggest-attrs false LLM-подсказки имён реквизитов (требует config-aware + LLM)
--epfgen-concurrency <N> min(CPU, 8) Число параллельных воркеров
--epfgen-llm-disable false Отключить обогащение через LLM (работает без API-ключей)
--epfgen-emit-sarif <путь> - Путь для SARIF 2.1.0 отчёта
--epfgen-audit-trail <путь> - Путь к epfgen audit log
--epfgen-platform-version <версия> 8.3.10 Целевая версия 1С (контролирует версию формата MDClasses XML)
Навигация по типовым конфигурациям
--build-typicalconfigs false Запустить разовую индексацию типовых конфигураций и выйти
--enable-typicalconfigs false Включить typicalconfigs в режиме MCP-сервера
--typicalconfigs-output <путь> - Каталог для index.json, reverse.json, manifest.json и per-subsystem .md
--typicalconfigs-dump-path <путь> - Путь к dump-каталогу (обязателен при --build-typicalconfigs)
--typicalconfigs-regen false Игнорировать кэш и регенерировать индекс
--typicalconfigs-llm-disable false Отключить обогащение через LLM (описания подсистем останутся пустыми)
--typicalconfigs-concurrency <N> min(CPU, 8) Размер пула воркеров (значение 0 означает auto)
--typicalconfigs-emit-sarif <путь> - Путь для SARIF 2.1.0 отчёта
--typicalconfigs-audit-trail <путь> - Путь к audit log по операциям typicalconfigs
--typicalconfigs-max-subsystems <N> 500 Cap для очень больших дампов; подсистемы свыше cap получают статус truncated
--typicalconfigs-platform-version <версия> 8.3.10 Целевая версия 1С
--debug false Подробное логирование в файл (~/.cache/mcp-1c-pro/server.log)
CFEDiff — diff расширений (подкоманда review)
review <base.cfe> <head.cfe> - Подкоманда: сравнить два .cfe. Exit code: 0 no diff, 1 diff found, 2 error
--format <формат> markdown Формат вывода: markdown, json или text
-o, --output <файл> stdout Путь к файлу с отчётом
--ignore-* - 11 фильтров технического шума: trailing whitespace, line endings, BOM, UUID-порядок и т. д. (полный список через review --help)
--no-watermark false Убрать watermark Trial (только для verified-paid лицензий)
--diagnostic false Добавить диагностический zip-пакет (для тикетов поддержки)
--bug-report false PII-safe tar.gz для GitHub-issue submission
--enable-ibcmd false Опциональная best-effort валидация через ibcmd (8.3.27+). Сейчас всегда даёт информационное предупреждение, не блокирует diff (см. раздел CFEDiff)
Лимиты ответов (env)
MCP_ARCHVIZ_BUDGET_BYTES 1048576 (1 MiB) Бюджет ответа archviz в байтах; при превышении — manifest fallback
MCP_AUTODOC_BUDGET_BYTES 1048576 (1 MiB) Бюджет ответа autodoc в байтах
MCP_UPDATE_HELPER_BUDGET_BYTES 1048576 (1 MiB) Бюджет ответа update_helper в байтах
MCP_AUTODOC_RATE_LIMIT 10/60s Лимит вызовов autodoc формата <count>/<seconds>s (защита от исчерпания LLM-кредитов)

Примеры команд

# Минимальный запуск (все по умолчанию)
mcp-1c

# С аутентификацией и выгрузкой
mcp-1c --base http://server:8080/erp/hs/mcp-1c \
  --user Admin --password secret \
  --dump /dumps/erp

# Установка в клиент-серверную базу с нестандартной платформой
mcp-1c --install "srv-1c\buh_prod" --server \
  --platform "C:\Program Files\1cv8\8.3.25.1000\bin\1cv8.exe" \
  --db-user Admin --db-password pass
# Advanced: мультибазовость с polling
mcp-1c-advanced \
  --base dev=http://localhost:8080/hs/mcp-1c \
  --base staging=poll:// \
  --auth dev=Admin:dev123 \
  --dump dev=/dumps/dev \
  --listen :9090 \
  --poll-user agent --poll-password secret \
  --default-base dev

# Advanced: обновить данные синтакс-помощника
mcp-1c-advanced --update-syntax

# Advanced: управление лицензией
mcp-1c-advanced --activate "MCP-XXXX-XXXX-XXXX-XXXX"    # или mcp-1c-pro
mcp-1c-advanced --license-status                     # или mcp-1c-pro
mcp-1c-advanced --deactivate                         # или mcp-1c-pro

Профессиональная: построение кэша

# Построить граф зависимостей
mcp-1c-pro --dump /path/to/dump --build-depgraph

# Построить полный анализ (антипаттерны + безопасность + метрики)
mcp-1c-pro --dump /path/to/dump --build-bulkanalysis

# Анализ только доработанных модулей (без типовых)
mcp-1c-pro --dump /path/to/dump --build-bulkanalysis --vendor-baseline /path/to/vendor

# CI/CD: quality gates
mcp-1c-pro --dump /path/to/dump --build-bulkanalysis --ci --fail-on-errors 10 --fail-on-debt-score 70

# HTML отчет
mcp-1c-pro --dump /path/to/dump --build-bulkanalysis --report report.html --format html

# Сравнение конфигураций (3-way diff)
mcp-1c-pro --update-helper --dump /path/to/custom --vendor-old /path/to/old-vendor --vendor-new /path/to/new-vendor

# Запуск MCP сервера с семантическим поиском и графом
mcp-1c-pro --dump /path/to/dump --enable-semantic --enable-depgraph

Профессиональная: визуализация, документация, тесты

# Архитектурные диаграммы (subsystems / doc-reg / bp / all)
mcp-1c-pro --dump /path/to/dump --build-archviz --arch-viz all --output-dir ./diagrams

# Markdown-документация по объектам через YandexGPT
mcp-1c-pro --dump /path/to/dump --build-autodoc \
  --autodoc-out ./docs/auto --autodoc-provider yandexgpt

# Генерация unit-тестов (YAxUnit + Vanessa)
mcp-1c-pro --dump /path/to/dump --build-testgen \
  --testgen-framework auto --testgen-output ./tests \
  --testgen-taint-regressions

# Designer-compatible .epf бандлы с упаковкой
mcp-1c-pro --build-epfgen --epfgen-spec ./bundles.yaml --epfgen-pack

# Индексация типовой конфигурации (БП, ЗУП, УТ, Розница, КА, ERP)
mcp-1c-pro --build-typicalconfigs \
  --typicalconfigs-dump-path ./dump \
  --typicalconfigs-output ./typicalconfigs-output \
  --typicalconfigs-llm-disable

# MCP-сервер с включёнными новыми инструментами
mcp-1c-pro --dump /path/to/dump \
  --enable-testgen --enable-epfgen --enable-typicalconfigs

Профессиональная: CFEDiff

# Сравнить две версии расширения, вывод в файл
mcp-1c-pro review base.cfe head.cfe --format markdown -o diff.md
echo "exit code: $?"  # 0 = no diff, 1 = diff found, 2 = error

# JSON-вывод для парсинга в CI
mcp-1c-pro review base.cfe head.cfe --format json -o diff.json

# Без watermark Trial (для verified-paid лицензий)
mcp-1c-pro review base.cfe head.cfe --no-watermark -o diff.md

# Диагностический пакет для тикета поддержки
mcp-1c-pro review base.cfe head.cfe --diagnostic -o diff.md

Поддерживаемые платформы

Операционные системы

ОС MCP-сервер Автоустановка HTTP-сервис 1С
Windows (x64) Да Да Apache/IIS или /HTTPPort
macOS (x64, ARM) Да Да Нет (ограничение платформы 1С)
Linux (x64, ARM64) Да Да Apache или ibsrv

Платформы 1С: 8.3.x и 8.5.x (коммерческая и учебная).

AI-клиенты

AI-клиент Статус Примечания
Claude Desktop Полная поддержка Нативная поддержка MCP
Claude Code (CLI) Полная поддержка Терминальный клиент Anthropic
Cursor Полная поддержка Settings → MCP
Windsurf Полная поддержка MCP-совместимый
VS Code + Copilot Полная поддержка Через GitHub Copilot MCP
VS Code + Continue Полная поддержка Open Source расширение
JetBrains IDE Полная поддержка IntelliJ, GoLand и другие

Лицензирование платных версий

Расширенная и Профессиональная версии требуют лицензионный ключ. Лицензия привязывается к конкретной машине при активации. Процесс одинаковый для mcp-1c-pro и mcp-1c-advanced.

Активация

mcp-1c-pro --activate "MCP-XXXX-XXXX-XXXX-XXXX"    # или mcp-1c-advanced

Пример вывода

License activated successfully!
  Edition:  Pro
  Expires:  2026-04-14

Ключ активируется один раз. Лицензия хранится локально и проверяется периодически.

Проверка статуса

mcp-1c-pro --license-status    # или mcp-1c-advanced

Пример вывода

License: ACTIVE
Key: MCP-XXXX-XXXX-XXXX-XXXX
Expires: 2026-04-14
Edition: Pro

Деактивация

mcp-1c-pro --deactivate    # или mcp-1c-advanced

Пример вывода

License deactivated.

Деактивация освобождает слот устройства. Используйте перед переносом лицензии на другую машину.

Обновление

Платные бинарники умеют обновляться сами. Флаг --update проверяет наличие новой версии и, если она есть, скачивает её и заменяет текущий бинарник на месте.

mcp-1c-pro --update    # или mcp-1c-advanced

Пример вывода

Текущая версия: ...
Проверка обновлений...
Обновление до ... выполнено успешно.
  • Загрузка идёт через лицензионный сервер: запрос авторизуется лицензионным ключом и идентификатором машины.
  • Перед заменой бинарника проверяется криптографическая подпись (Ed25519) скачанного файла — это защищает от подмены.
  • Если установлена последняя версия, выводится Установлена последняя версия. и бинарник не меняется.
  • После обновления перезапустите MCP-сервер (и AI-клиент, если он держал процесс).

Обновление данных синтаксиса

# Автоматически найдет платформу
mcp-1c-pro --update-syntax    # или mcp-1c-advanced

# Или укажите путь вручную
mcp-1c-pro --update-syntax --platform /opt/1cv8/8.3.25.1000

Разбирает файлы синтакс-помощника платформы (shcntx_ru.hbk) и сохраняет в локальный кэш. После обновления перезапустите MCP-сервер.

Что произойдёт
  1. Бинарник найдёт установленную платформу 1С на вашей машине
  2. Распарсит файлы справки (.hbk) вашей версии платформы
  3. Сохранит данные в кэш (~/.cache/mcp-1c/syntax/ или %LocalAppData%)
  4. При следующем запуске code_search(action: "syntax_help") будет использовать справку именно вашей версии

Часто задаваемые вопросы

Открытая версия работает только на чтение: метаданные, код модулей, запросы (только SELECT). Расширенная версия добавляет возможность выполнения кода через sandbox (с подтверждением, аудит-логом и ограничениями безопасности). Ни одна версия не модифицирует конфигурацию.
MCP-сервер работает полностью локально и не требует интернета. Интернет нужен только AI-клиенту (Claude, Cursor и т.д.) для связи со своим облачным AI. Расширенная и Профессиональная версии периодически проверяют лицензию через интернет.
Открытая версия поддерживает одну базу. Расширенная версия поддерживает мультибазовый режим: подключите несколько баз через --base NAME=URL (повторяемый флаг). AI-ассистент сам выбирает нужную базу.
MCP-сервер запускается на macOS, но HTTP-сервис 1С необходимо запустить на Windows или Linux (через виртуальную машину или удаленный сервер). Укажите URL удаленного HTTP-сервиса в --base.
code_search(action: "text") -- действие полнотекстового поиска по всему коду модулей конфигурации. Для его работы необходима выгрузка конфигурации в файлы (Конфигуратор → Конфигурация → Выгрузить конфигурацию в файлы). Путь указывается через --dump. Индекс строится в фоне (~7 сек для 13 000+ модулей) и кэшируется на диске.
Открытая -- бесплатная open source версия с 9 инструментами: метаданные, код модулей, выполнение запросов, поиск по коду, валидация, журнал регистрации, структура форм, информация о конфигурации, справка по синтаксису BSL.

Расширенная -- платная версия с 6 консолидированными инструментами. Возможности Открытой объединены в инструменты с параметром action (code_read, code_search, code_execute, system), к ним добавлены code_analyze (глубокий анализ кода, совместимость) и code_generate (оптимизация запросов, генерация кода, печатные формы). Плюс расширенный синтакс-помощник (.hbk), мультибазовость, поддержка расширений .cfe, long polling и другое.

Профессиональная -- включает все инструменты Расширенной плюс: bulk_analyze (массовый анализ всей кодовой базы), граф зависимостей, семантический поиск, аудит безопасности, метрики качества, CI/CD интеграция, помощник по обновлению типовых, HTML/PDF отчеты, архитектурная визуализация (Mermaid-диаграммы), автогенерация документации (YandexGPT/GigaChat), генерация YAxUnit и Vanessa тестов, генерация Designer-compatible .epf обработок и навигация по типовым конфигурациям (БП, ЗУП, УТ, Розница, КА, ERP). При регистрации вы получаете 14-дневный пробный период Профессиональной версии.

Сравнение тарифов →
Выполните mcp-1c-pro --deactivate # или mcp-1c-advanced на старой машине, затем mcp-1c-pro --activate YOUR-KEY # или mcp-1c-advanced на новой. Деактивация освобождает слот устройства.

История изменений

Загрузка...

Остались вопросы?

Напишите нам или загляните в репозиторий на GitHub