Инструменты по категориям
Code Index в категории метаданных — локальный read-only индекс по файловой выгрузке. Расширенная сборка bsl-indexer разбирает Configurator XML и EDT .mdo, нормализует результаты в одни SQLite-таблицы и связывает модель метаданных с BSL-кодом.
Инструменты по метаданным
get_object_structure | структура объекта: реквизиты, табличные части, измерения, ресурсы, синонимы и дополнительные свойства; поддерживает выбор секций и критерий name_like + meta_type. |
|---|---|
get_object_profile | агрегированный профиль объекта: структура, формы, модули и связи данных. |
get_data_links | входящие и исходящие связи объекта на глубину до четырех уровней. |
find_data_path | путь между двумя объектами по ссылочным связям. |
get_register_writers | документы-регистраторы регистра и регистры, в которые пишет документ, по декларативному составу движений. |
find_references | impact map из обратных metadata links, использований объекта в BSL и прав ролей. |
get_event_subscriptions | подписки с фильтрами по обработчику, событию и объекту-источнику. |
bsl_sql | read-only SELECT/WITH по таблицам индекса для фильтров, join и агрегаций, которые не закрыты отдельным tool. |
Сильные стороны
один и тот же MCP-контракт работает с Configurator XML и EDT .mdo; есть не только карточка объекта, но и граф связей, путь между объектами, движения документов, кодовые usages и права ролей. Можно получать узкие секции и компактные агрегированные ответы вместо чтения XML в контекст.
Ограничения
это снимок файловой выгрузки, а не актуальные метаданные живой базы или открытой EDT-сессии. Нет создания, удаления, переименования и изменения объектов. Формы представлены списком и обработчиками событий, без публичного tool для полного дерева элементов. Роли доступны как права в impact map/SQL, а не как отдельная полная карточка роли.
Когда выбирать
для офлайн-анализа крупной выгрузки, когда нужны структура объекта и прослеживание связей между метаданными, BSL-кодом, движениями и правами без изменения конфигурации.
Code Index — локальный read-only индексатор для крупных репозиториев. Универсальный слой разбирает BSL через tree-sitter, индексирует функции, тела, файлы и вызовы, поддерживает FTS, literal/regex-поиск и чтение диапазонов строк. Отдельный bsl-indexer дополняет это разбором XML-выгрузки конфигуратора и .mdo из 1C:EDT.
Инструменты по кодовой базе
search_function, get_function, find_symbol, search_terms | структурный, полнотекстовый и предметный поиск процедур. |
|---|---|
get_callers, get_callees, get_call_tree, find_path, find_path_bsl | навигация по общему и BSL-специфичному графу вызовов. |
grep_body, grep_code, search_text | literal, regex и FTS-поиск с фильтрами по языку и пути. |
get_file_summary, read_file, list_files, stat_file | карта файла и точечное чтение исходников. |
Сильные стороны
один локальный индекс объединяет код, call graph и модель метаданных; daemon следит за изменениями, а несколько MCP-сессий читают общий индекс параллельно. Федерация и repo aliases позволяют искать по нескольким большим репозиториям. Инструменты возвращают компактные структурированные ответы и умеют ограничивать область через path_glob.
Ограничения
инструмент не дает LSP definition/hover/code actions, диагностику и изменение кода. npm-wrapper устанавливает универсальный code-index, который умеет структурно индексировать BSL, но не содержит XML/MDO-слой метаданных и 11 специализированных 1С-tools; для них нужен bsl-indexer. Анализ выполняется по файловой выгрузке, а не по живой базе.
Когда выбирать
для офлайн-анализа большой конфигурации, когда агенту нужны быстрый поиск процедур, чтение точных фрагментов, граф вызовов и связи кода с метаданными при минимальном расходе контекста.
Code Index относится к категории форм только как индекс обработчиков событий. При полном проходе bsl-indexer формы из Configurator Form.xml и EDT Form.form записываются в metadata_forms; публичный tool не возвращает полное дерево формы.
Инструменты по формам
get_form_handlers | по владельцу и имени формы возвращает пары event → handler; если форма неизвестна, показывает доступные формы владельца. |
|---|
Сильные стороны
одинаковый сценарий для Configurator и EDT; быстро связывает событие формы с именем BSL-обработчика и помогает перейти к его телу через инструменты кодовой базы.
Ограничения
нет чтения элементов, команд, реквизитов формы, привязок и свойств; нет генерации, изменения, валидации, preview или screenshot. Это индекс навигации по обработчикам, а не полноценный form-aware сервер.
Когда выбирать
когда по файловой выгрузке нужно определить формы объекта и обработчики их событий, а затем продолжить анализ соответствующих BSL-процедур.
Что учитывать
/mcp; один сервер может обслуживать несколько репозиториев с выбором по alias.CODE_INDEX_HOME и запущенный daemon для постоянной фоновой индексации. Публичный npm-wrapper устанавливает универсальный code-index: он структурно индексирует BSL, включая процедуры и аннотации расширений, но не содержит XML/MDO-индексацию метаданных и 11 специализированных 1С-tools. Для полного набора нужен бинарный файл bsl-indexer из GitHub Releases или сборка из исходников.tools/list только при наличии репозитория с language = "bsl". Инструмент работает офлайн по файловой выгрузке и не требует запущенной платформы 1С; произвольный bsl_sql ограничен read-only запросами SELECT/WITH, лимитом строк и timeout.