MCP:1C-DevTools
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP:1C-DevToolsRun a full quality audit on the config dump"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP:1C-DevTools — сервер для разработки 1С
78 инструментов для разработки в 1С:Предприятие — статический анализ, аудит кода, проверка запросов, верификация EPF, пакетная работа с конфигурацией и ibcmd.
Работает с локальными XML-выгрузками конфигурации 1С — не требует запущенной базы 1С.
Быстрый старт
Docker
# Клонируем и готовим данные
mkdir -p config-dump
# Копируем XML-выгрузку 1С в config-dump/
# Собираем и запускаем
docker build -t onec-devtools .
docker run --rm -it \
-v $(pwd)/config-dump:/data/config:ro \
-v $(pwd)/src/cf:/data/src:ro \
onec-devtools
# Или через docker-compose
docker-compose up --buildЛокально
pip install -r requirements.txt
python -m mcp_devtools --config-path ./config-dumpRelated MCP server: onec-meta-mcp
Доступные инструменты (78)
А: Метаданные (10)
Инструмент | Описание |
| Дерево метаданных по типам |
| Полная структура объекта |
| Поиск по имени/описанию |
| Граф зависимостей |
| Объекты вне подсистем |
| Сравнение двух версий метаданных |
| Ссылки на несуществующие объекты |
| Карта подсистем → объекты |
| Где используется реквизит |
| Перекрёстные ссылки: формы, модули, запросы |
Б: Аудит (15)
Инструмент | Описание |
| Аудит BSL-кода: очереди, транзакции, флаги загрузки, логика KPI |
| 15 антипаттернов запросов |
| Антипаттерны BSL-кода |
| Хардкод секретов |
| Устаревшие методы платформы |
| Шаблоны персональных данных |
| Анализ ролей и RLS-прав |
| Дублирующийся код |
| Невостребованные функции |
| Цикломатическая сложность |
| Аудит внешних интеграций: транспорт, идемпотентность |
| Безопасность планов обмена |
| Совместимость с версией платформы |
| Проверка флага загрузки в обработчиках записи |
| Согласованность границ транзакций |
В: Запросы (8)
Инструмент | Описание |
| Синтаксическая и семантическая валидация |
| Подсказки по оптимизации |
| Извлечение логического плана |
| Медленные паттерны запросов |
| Генерация по описанию |
| Проверка полей по метаданным |
| Проверка измерителей регистров |
| Конвертация синхронных в асинхронные |
Г: EPF-артефакты (8)
Инструмент | Описание |
| Проверка бинарного заголовка |
| Сборка → выгрузка → diff |
| Генерация из шаблона |
| Извлечение метаданных из EPF |
| Проверка полноты модулей |
| Сравнение двух EPF |
| Проверка по общим правилам BSL-аудита |
| Список команд внешн. обработки |
Д: Формы и СКД (8)
Инструмент | Описание |
| Анализ структуры формы |
| Формы без привязанных объектов |
| Аудит команд |
| Структура компоновщика данных |
| Проверка полей СКД |
| Сравнение макетов СКД |
| Аудит макетов MXL |
| Конвертация модальных вызовов |
Е: Интеграции (6)
Инструмент | Описание |
| Анализ планов обмена |
| Валидация XDTO-пакетов |
| Проверка контракта КШД |
| Аудит retry-политики |
| Аудит каскадов отмены |
| Профилактика петель данных |
Ё: Тесты и качество (6)
Инструмент | Описание |
| Шаблоны тестов (YAxUnit/Vanessa) |
| Анализ покрытия тестами |
| Метрики качества кода |
| Полная проверка (антипаттерны + дубли + мёртвый код) |
| CI/CD quality gate |
| Тренды метрик по версиям |
Ж: DevTools-ассистенты (8)
Инструмент | Описание |
| Справка по функциям платформы + вердикт exists/absent/unknown (verified_api.json) |
| Генератор запросов |
| Шаблон печатной формы |
| Шаблон отчёта СКД |
| Модальные → асинхронные вызовы |
| Синонимы функций (СтрНайти ↔ StrFind) |
| Доступность метода в версии платформы |
| Шаблоны конфигурации |
З: Конфигурация (5)
Инструмент | Описание |
| Сравнение двух сборок XML |
| Проверка готовности к сборке |
| Добавленные/удалённые объекты |
| Чеклист перед коммитом |
| Полный отчёт о конфигурации |
Конфигурация
Задаётся через переменные окружения или аргументы CLI:
Переменная | Описание | По умолчанию |
| Путь к XML-выгрузке 1С | требуется для инструментов метаданных |
| Уровень логирования | INFO |
| Тестовая 1С-база для round-trip | опционально |
| Путь к 1cv8.exe | опционально |
| Внешний JSON верифицированного справочника имён API | встроенный |
Верифицированный справочник имён API (verified_api.json)
Инструменты bsl.syntax.help, bsl.find_synonyms, bsl.version_check отвечают по
файлу mcp_devtools/verified_api.json: список имён, проверка которых выполнена
исполнением на живой платформе 8.3 (EPF-оракул с Вычислить()/Оценить() через
COM), а не по памяти автора сервера. Это защита от выдуманных методов вида
ДатаГод, ЭтоЧисло, НайтиПоСсылке, TrimLeft, ToUpper — на все них платформа
отвечает «не определена».
Три состояния ответа (важно, не путать):
Вердикт | Значит | Доказательство |
| имя разрешено компилятором 8.3 | OK / ошибка аргументов / ошибка типа / «Обращение к процедуре как к функции» / «Ожидается выражение |
| имени в API нет | явное «Процедура или функция с указанным именем не определена» / «Метод объекта не обнаружен» |
| имя не проверялось | нет записи в реестре — не приравнивать к absent |
Ключевая деталь классификации: для встроенных функций с фиксированной арностью
«Ожидается выражение» / «Ожидается символ ')'» означает, что компилятор уже узнал
имя (то есть exists) — заведомо ложное имя даёт «не определена» (контроль проверялся).
Реестр ограничен перечнем проверенных имён (83 глобальные функции, 10 методов менеджера Справочники, 18 подтверждённых пар синонимов ru/en, 49 опровергнутых имён). Пополняется прогоном оракула на тестовой ИБ; неизвестное имя проверяется ИТС/оракулом, а не выдумывается.
Про BSL LS (1c-syntax/bsl-language-server): проверка на живой сборке 1.0.7
показала, что диагностика UnknownMember (поиск несуществующих методов платформы)
выключена по умолчанию и эвристическая — для автономных .bsl без индекса
метаданных (mdoRef) она не находит ничего из наживки (Справочники...НайтиПоСсылке,
РегБ, ЭтоЧисло). Поэтому BSL LS — статический анализ кода (кодомер, smells),
но НЕ источник истины по существованию API-имён; для имён — этот реестр/ИТС.
Архитектура
┌──────────────┐ ┌──────────────────┐ ┌──────────────┐
│ MCP-клиент │────▶│ MCP-сервер │────▶│ 1С Config │
│ (Kilo и др) │◀────│ (Python) │◀────│ (локальный) │
└──────────────┘ └──────────────────┘ └──────────────┘Работает исключительно с локальными XML-файлами — для статического анализа запущенная база 1С не нужна.
Лицензия
MIT
Пакетная автоматизация 1С
Проект содержит проверяемый workflow для Windows:
python scripts/onec-batch.py designer-capabilities
python scripts/onec-batch.py ibcmd-capabilities
python scripts/onec-batch.py ibcmd-help --ibcmd "C:\\Program Files\\1cv8\\8.3.21.1393\\bin\\ibcmd.exe"
python scripts/onec-batch.py apply-and-build-cf \
--onec "C:\\Program Files\\1cv8\\8.3.21.1393\\bin\\1cv8.exe" \
--infobase "C:\\Bases\\Test" \
--source "C:\\src\\cf" \
--output "C:\\artifacts\\build.cf"Что автоматизировано
каталог пакетных операций
1cv8.exe DESIGNER;каталог и discovery фактических команд
ibcmdчерезibcmd help;backup CF перед изменяющими операциями;
загрузка XML через
/LoadConfigFromFiles;применение через
/UpdateDBCfg;выгрузка итогового CF через
/DumpCfg;сбор exit code,
/Out-лога, размера и SHA-256;fail-fast и возможность rollback из backup CF;
передача аргументов без
shell=True, что сохраняет пробелы и кириллические пути.
Подробная матрица команд находится в skills/onec-batch-operations/SKILL.md.
Подключение к MCP-клиенту
Локальный stdio-запуск из корня репозитория:
{
"mcpServers": {
"onec-devtools": {
"command": "python",
"args": ["-m", "mcp_devtools", "--config-path", "C:/path/to/config-dump"],
"cwd": "C:/path/to/onec-devtools"
}
}
}Каталог config-dump должен содержать XML-выгрузку конфигурации. Путь к 1cv8.exe, тестовой ИБ и другим ресурсам передаётся через переменные окружения или аргументы; значения в документации намеренно обезличены.
Для пакетных операций MCP-клиент вызывает designer.capabilities или ibcmd.capabilities, затем — соответствующую операцию. Изменяющие операции требуют явного confirmed=true; credentials не записываются в логи.
Публичный MCP-клиент должен использовать list_tools, а не полагаться на README: сервер обязан объявлять доступные инструменты через MCP discovery.
This server cannot be deployed
Maintenance
Related MCP Connectors
AI-powered codebase analysis — call graphs, security, dead code, complexity. 150+ tools.
Code intelligence platform for AI agents. 20 tools for architecture, security & impact analysis.
Enterprise code intelligence for M&A, security audits, and tech debt. Hosted server with 200k free.
Read-only AI coding tools for change verification, release readiness, capacity, and guidance.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with 1C:Enterprise databases through natural language, providing metadata retrieval, configuration analysis, and code generation.9-
- FlicenseNot gradedqualityBmaintenanceMCP server for searching and analyzing 1C enterprise metadata and BSL code using a SQLite backend. Enables querying configuration structure, code routines, and performing compliance checks via natural language.-
- AlicenseNot gradedqualityAmaintenanceEnables searching through 1C:Enterprise configuration source code (XML+BSL) with full-text indexing, providing tools to find code, metadata objects, procedures, and modules.MIT
- AlicenseNot gradedqualityAmaintenanceA local read-only AI workbench for navigating, auditing, and analyzing 1C:Enterprise 8.3 configurations via MCP-compatible clients.MIT