bsl-ls-mcp
MCP-обертка над BSL Language Server: диагностика кода 1С, поиск вызовов, определений и сложности методов по всему корпусу конфигурации
Низкий риск
Низкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.
Почему такой уровень
- Только читает исходники 1С и статически их анализирует, в базу не пишет
- Локальный HTTP-порт без авторизации нужно держать закрытым от сети
Установка
Ручная установка
set BSL_WORKSPACE=C:\1c\src\cf
run.cmd --selftest
run.cmdЗапуск готового бандла dist\bsl-ls-mcp, поднимает streamable-http сервер на порту 8081.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервер поднимает демон, который индексирует выгрузку конфигурации 1С в формате CR (каталог src/cf) и отдает семь инструментов через MCP: диагностику модуля или произвольного файла вне корпуса, поиск вызывающих и вызываемых функций, переход к определению, поиск всех мест использования метода, оценку когнитивной и цикломатической сложности и полный переиндекс корпуса. Объекты адресуются полным именем в формате 1С, например ОбщийМодуль.ОбщегоНазначения.Метод, а код вне конфигурации, такие как внешние обработки, через параметр path. Диагностика работает без индекса за 5-8 секунд, а первый вызов навигации ждет построения графа около полутора минут, дальше отвечает мгновенно.
Для кого. Для 1С-разработчиков и ревьюеров, которым нужен статический анализ BSL-кода и навигация по большой конфигурации прямо из агента.
Подходит, если
- Нужно проверить модуль или внешнюю обработку на ошибки и устаревшие конструкции перед сдачей
- Нужно понять, кто вызывает функцию и что она вызывает, перед правкой
- Нужна оценка сложности методов для ревью кода
Не подходит, если
- Нет CR-выгрузки исходников 1С или свободных ~14 ГБ RAM для навигационного индекса
- Нужен доступ к серверу удаленно без своего reverse-proxy с авторизацией: демон слушает только localhost по умолчанию
Пример запроса к агенту
Проверь модуль ОбщийМодуль.РаботаСФайлами на ошибки и покажи, кто вызывает его функцию ЗаписатьФайлОграничения
Автор прямо пишет, что развивает проект по остаточному принципу, без гарантий поддержки и сроков разбора issue, хотя инструмент рабочий и используется в бою. Только Windows, для полноценной навигации нужно порядка 14 ГБ свободной RAM. Демон не аутентифицирует вызовы и по умолчанию слушает только 127.0.0.1, для сети нужен свой reverse-proxy и явные переменные BSL_MCP_HOST и BSL_ALLOW_REMOTE.
Как отключить. Остановите службу bsl-ls-mcp (или закройте run.cmd) и удалите ее из автозапуска, если ставили через install-service.ps1, затем уберите сервер из .mcp.json клиента.
MCP
- Транспорт
- http
- Авторизация
- не нужна
| Переменные окружения | |
|---|---|
| BSL_WORKSPACE обязательная | Путь к каталогу с CR-выгрузкой исходников 1С (src/cf). |
| BSL_MCP_HOST | Адрес прослушивания демона, 0.0.0.0 заблокирован без BSL_ALLOW_REMOTE=1. |
| BSL_ALLOW_REMOTE | Явное разрешение слушать не только localhost. |
| BSL_ALLOWED_ROOTS | Список разрешенных каталогов для запросов по path вне корпуса. |
Проверка безопасности
- Только читает исходники 1С и статически их анализирует, в базу не пишет
- Локальный HTTP-порт без авторизации нужно держать закрытым от сети
Коротко о README
README перечисляет требования (CR-выгрузка 1С, около 14 ГБ RAM, Java 17+), два способа запуска (готовый самодостаточный бандл или установка из исходников через pip) и подключение к MCP-клиенту через streamable-http. Отдельно предупреждает про отсутствие аутентификации демона и советует не открывать порт в сеть без reverse-proxy. Таблица дает семь инструментов с параметрами и назначением, ниже разобран формат ответа каждого. Подробности вынесены в README_full.md. Лицензия MIT, статус проекта явно обозначен как поддержка по остаточному принципу.
Частые вопросы
Нужен ли Python или Java для установки?
Нет, если использовать готовый бандл dist\bsl-ls-mcp, внутри уже есть Python и Java. Для установки с исходников нужны Python 3.10+ и Java 17+.
Безопасно ли открывать порт в сеть?
Нет без дополнительной защиты. Демон не проверяет авторизацию вызовов, поэтому автор рекомендует ставить перед ним reverse-proxy с авторизацией и не открывать порт напрямую.
Похожие
Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода
Скиллы Мэтта Покока для инженеров
Skills For Real Engineers
Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура
Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации
Референсные MCP-серверы
Model Context Protocol servers
Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything