Инструменты по категориям

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_referencesimpact map из обратных metadata links, использований объекта в BSL и прав ролей.
get_event_subscriptionsподписки с фильтрами по обработчику, событию и объекту-источнику.
bsl_sqlread-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_textliteral, 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-процедур.

Что учитывать

ПодключениеSTDIO MCP по умолчанию или Streamable HTTP на /mcp; один сервер может обслуживать несколько репозиториев с выбором по alias.
Что нужноготовый бинарный файл для Windows, Linux или macOS либо Rust 1.77+ для сборки; CODE_INDEX_HOME и запущенный daemon для постоянной фоновой индексации. Публичный npm-wrapper устанавливает универсальный code-index: он структурно индексирует BSL, включая процедуры и аннотации расширений, но не содержит XML/MDO-индексацию метаданных и 11 специализированных 1С-tools. Для полного набора нужен бинарный файл bsl-indexer из GitHub Releases или сборка из исходников.
ВажноMCP-слой работает только на чтение индекса и не меняет исходный проект. 1С-tools появляются в tools/list только при наличии репозитория с language = "bsl". Инструмент работает офлайн по файловой выгрузке и не требует запущенной платформы 1С; произвольный bsl_sql ограничен read-only запросами SELECT/WITH, лимитом строк и timeout.