1. Conduid
  2. Developer Tools
  3. Bsl Lsp Bridge
MCP server · Developer Tools

Bsl Lsp Bridge

MCP-сервер, который даёт ИИ-агентам (Cursor, Claude Code и др.) доступ к возможностям BSL Language Server для работы с кодом 1С и OneScript: навигация, поиск, диагностика, рефакторинг. Цель - обеспечить детерминированные операции над кодом и экономия токенов (конечно модель всё может сделать грепами, но сколько токенов сожжет?)

Unclaimed devtools
39Low

Scored 7 months ago · breakdown

About Bsl Lsp Bridge

Bsl Lsp Bridge is an MCP server published by SteelMorgan in the Developer Tools category: mCP-сервер, который даёт ИИ-агентам (Cursor, Claude Code и др.) доступ к возможностям BSL Language Server для работы с кодом 1С и OneScript: навигация, поиск, диагностика, рефакторинг. Цель - обеспечить детерминированные операции над кодом и экономия токенов (конечно модель всё может сделать грепами, но сколько токенов сожжет?).

The repository has 69 stars and 10 forks, with the last commit 27 days ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/SteelMorgan/mcp-bsl-lsp-bridge

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (7)

completionЧлены типа после точки + возвращаемые типы (Type System v2): реквизиты/ТЧ объекта, значения перечисления, предопределённые

Parameters not published.

definitionПерейти к определению

Parameters not published.

get_range_contentПолучить фрагмент кода

Parameters not published.

hoverДокументация и сигнатура

Parameters not published.

project_analysisУниверсальный поиск: символы, файлы, текст

Parameters not published.

signature_helpПараметры и перегрузки вызываемого метода в точке вызова

Parameters not published.

symbol_exploreДетальный поиск с кодом и документацией

Parameters not published.

Ask AI

✦

Ask AI about Bsl Lsp Bridge

Powered by Claude · Grounded in docs

I know everything about Bsl Lsp Bridge. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

MCP BSL LS Bridge

MCP-сервер, который даёт ИИ-агентам (Cursor, Claude Code и др.) доступ к возможностям BSL Language Server для работы с кодом 1С и OneScript: навигация, поиск, диагностика, рефакторинг. Цель - обеспечить детерминированные операции над кодом и экономия токенов (конечно модель всё может сделать грепами, но сколько токенов сожжет?)

Особенности проекта

  • BSL LS поднимается заранее и сразу начинает подготовку кеша.
  • добавлена надстройка call_graph для формирования полного графа вызовов силами BSL LS

Как это работает

┌─────────────────────────────────────────────────────────────────┐
│  HOST (Windows/Linux/macOS)                                     │
│                                                                 │
│  ┌──────────────┐      ┌──────────────────────────────────────┐ │
│  │   Cursor     │      │         Кодовая база 1С              │ │
│  │   (IDE)      │      │   D:/Projects/MyConfig               │ │
│  └──────┬───────┘      └──────────────┬───────────────────────┘ │
│         │ docker exec -i              │ volume mount            │
└─────────┼─────────────────────────────┼─────────────────────────┘
          │                             │
          ▼                             ▼
┌─────────────────────────────────────────────────────────────────┐
│  DOCKER CONTAINER                                               │
│                                                                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  mcp-lsp-bridge (MCP Server)                             │   │
│  │  Принимает запросы от IDE, транслирует в LSP             │   │
│  └──────────────────────┬───────────────────────────────────┘   │
│                         │ TCP :9999                             │
│  ┌──────────────────────▼───────────────────────────────────┐   │
│  │  lsp-session-manager                                     │   │
│  │  Держит BSL LS запущенным, следит за индексацией         │   │
│  │  ┌────────────────────────────────────────────────────┐  │   │
│  │  │  File Watcher (polling)                            │  │   │
│  │  │  Отслеживает изменения файлов, уведомляет BSL LS   │  │   │
│  │  └────────────────────────────────────────────────────┘  │   │
│  └──────────────────────┬───────────────────────────────────┘   │
│                         │ stdio                                 │
│  ┌──────────────────────▼───────────────────────────────────┐   │
│  │  BSL Language Server (Java)                              │   │
│  │  Индексация, диагностика, навигация, рефакторинг         │   │
│  └──────────────────────────────────────────────────────────┘   │
│                         ▲                                       │
│  ┌──────────────────────┴───────────────────────────────────┐   │
│  │  /projects (смонтированная кодовая база)                 │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

Требования

  • Docker + Docker Compose
  • IDE с поддержкой MCP (Cursor, Claude Code)
  • 8+ ГБ RAM (BSL LS требователен к памяти на больших проектах)

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

Принцип: один проект = один контейнер (каталог проекта задаётся в .env)

1. Клонируй репозиторий

git clone https://github.com/SteelMorgan/mcp-bsl-lsp-bridge.git
cd mcp-bsl-lsp-bridge

2. Настрой окружение

cp env.example .env

Отредактируй .env — минимум нужно указать:

  • MCP_PROJECT_NAME — имя проекта (будет частью имени контейнера)
  • HOST_PROJECTS_ROOT — путь к коду 1С на хосте
  • WORKSPACE_ROOT — путь внутри контейнера к каталогу с кодом

Настройка WORKSPACE_ROOT

WORKSPACE_ROOT определяет корневой каталог для BSL LS внутри контейнера.

Один каталог с кодом:

WORKSPACE_ROOT=/projects/main-config

Основная конфигурация + расширения: Если нужно работать с несколькими каталогами кода (конфигурация + расширения), укажите их общий родительский каталог:

# Структура:
# /projects/
#   ├── main-config/    <- основная конфигурация
#   └── extension1/     <- расширение

WORKSPACE_ROOT=/projects

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

Все параметры описаны в env.example.

3. Собери и запусти контейнер

docker compose build
docker compose up -d

Имя контейнера: ${MCP_CONTAINER_PREFIX}-${MCP_PROJECT_NAME} (например mcp-lsp-demo)

4. Подключи MCP в IDE

Создай .cursor/mcp.json (или аналог для твоего MCP-клиента):

{
  "mcpServers": {
    "lsp-bsl-bridge": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "mcp-lsp-demo",
        "mcp-lsp-bridge"
      ],
      "env": {}
    }
  }
}

Замени mcp-lsp-demo на реальное имя контейнера.

5. Проверь подключение

В IDE вызови tool lsp_status — должен показать статус подключения и прогресс индексации.


Возможности (Tools)

Поиск и навигация

Tool Что делает Когда использовать
project_analysis Универсальный поиск: символы, файлы, текст Найти процедуру по имени, обзор проекта
symbol_explore Детальный поиск с кодом и документацией Нужна полная информация о символе
definition Перейти к определению "Где объявлена эта процедура?"
hover Документация и сигнатура "Какие параметры у функции?"
get_range_content Получить фрагмент кода Извлечь код по координатам

Анализ зависимостей

Tool Что делает Когда использовать
call_hierarchy Кто вызывает / что вызывает (1 уровень) Быстро понять связи
call_graph Полный граф вызовов Глубокий анализ перед рефакторингом

Диагностика и проверка кода

Tool Что делает Когда использовать
document_diagnostics Синтаксические ошибки, предупреждения, стилистика Проверка кода перед коммитом, поиск ошибок
code_actions Автоматические исправления Quick-fix для найденных ошибок

document_diagnostics — основной инструмент для синтаксического контроля. Возвращает все диагностики BSL LS: синтаксические ошибки, неиспользуемые переменные, deprecated методы, нарушения стиля и т.д.

Рефакторинг

Tool Что делает Когда использовать
prepare_rename Проверить возможность переименования Перед переименованием
rename Переименовать символ везде apply=false для preview

Служебные

Tool Что делает Когда использовать
lsp_status Статус LSP и прогресс индексации Проверить готовность
did_change_watched_files Уведомить об изменении файлов После git pull

Подробнее: docs/tools/tools-reference.md


Документация


Дорожная карта

  • Улучшить File Watcher для Win + Docker (пока polling, ищем решения)
  • Автообновление BSL LS при запуске контейнера
  • Сократить количество tools, упаковать логику в навыки
  • Сделать решение под Windows. Если использовать докер в Windows (WSL 2), то скорость чтения примаунченных каталогов ограничена. 40к файлов у меня читает около 12 минут. 9к файлов - в районе 3-5 минут. (упирается в общую "пропускную способность докера).

Вклад в проект

См. CONTRIBUTING.md. Баги и идеи — через Issues.

Благодарности

https://github.com/rockerBOO/mcp-lsp-bridge - взято за основу https://github.com/nixel2007 - за консультации по BSL LS

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Bsl Lsp Bridge

How do I install Bsl Lsp Bridge?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Bsl Lsp Bridge safe to use with an AI agent?

Its trust score is 39 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Bsl Lsp Bridge still maintained?

Yes — the last commit was 27 days ago. The repository has 69 stars and 10 forks.