BSL MCP Server
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., "@BSL MCP Serveranalyze my BSL project for issues"
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.
BSL MCP Server
MCP-сервер bsl-mcp анализирует каталог через BSL Language Server и отдает ошибки/предупреждения в JSON. Платформенную проверку синтаксиса 1С и функций не выполняет.
Возможности
BSL-анализ: запуск комплексного анализа файлов BSL/OS с подробной диагностикой
Форматирование кода: приведение BSL-файлов к правилам BSL Language Server
Related MCP server: xbsl-mcp
Установка
Предварительные требования
Python 3.10 или новее
Java Runtime Environment (JRE) 8 или новее
Установка из исходников
Клонируйте репозиторий:
git clone <repository-url>
cd mcp-bsl-pythonУстановите зависимости:
pip install -r requirements.txtУстановите пакет:
pip install -e .Настройка
Конфигурация MCP
Добавьте в ~/.cursor/mcp.json:
{
"mcpServers": {
"bsl-mcp": {
"command": "python",
"args": ["-m", "mcp_bsl.server"],
"env": {
"BSL_JAR": "C:\\1C\\AI\\bsl\\bsl-language-server-0.24.2-exec.jar",
"BSL_MEMORY_MB": "4096",
"BSL_CONFIG": "C:\\1C\\AI\\bsl\\.bsl-language-server.json",
"BSL_LOG_LEVEL": "ERROR"
},
"debug": false
}
}
}Примечание: значение
BSL_LOG_LEVELустановлено вERROR, чтобы минимизировать вывод логов в Cursor IDE. Для поиска проблем используйтеDEBUG.
Использование
В Cursor IDE
# Анализ директории (используйте АБСОЛЮТНЫЙ путь!)
mcp bsl-mcp C:\1C\lk\src\CommonModules\
# Если нужны DEBUG логи для отладки:
# В mcp.json измените: "BSL_LOG_LEVEL": "DEBUG"Доступные инструменты
bsl_analyze
Запуск анализа BSL по каталогу исходников или файлу.
Параметры:
srcDir(обязательно): путь к каталогу или файлу с .bsl/.os
Пример:
{
"name": "bsl_analyze",
"arguments": {
"srcDir": "C:\\1C\\MyProject\\src"
}
}bsl_format
Форматирование BSL-файлов в каталоге исходников.
Параметры:
srcDir(обязательно): путь к каталогу или файлу с .bsl/.os
Пример:
{
"name": "bsl_format",
"arguments": {
"srcDir": "C:\\1C\\MyProject\\src"
}
}Форматы вывода
Результаты анализа
Инструмент bsl_analyze выдает:
Человекочитаемую сводку с:
статусом (success/error)
количеством обработанных файлов
подсчетом диагностик по уровням важности
топ-проблемами с указанием местоположения в файлах
Структурированный JSON-вывод с:
полной диагностической информацией
путями к файлам, номерами строк/столбцов
уровнями важности и сообщениями
сводной статистикой
Результаты форматирования
Инструмент bsl_format выдает:
статус успех/ошибка
количество обработанных файлов
сырой вывод BSL Language Server
Конфигурация BSL Language Server
Создайте файл .bsl-language-server.json в корне проекта:
{
"language": "bsl",
"diagnostics": {
"computeTrigger": "onSave",
"skipSupport": "never"
},
"codeLens": {
"showCognitiveComplexity": true,
"showCyclomaticComplexity": true
},
"traceLog": {
"enabled": false
}
}Обработка ошибок
Сервер обрабатывает различные нештатные ситуации:
Файл не найден: проверяет корректность путей до запуска
Неверный JAR: проверяет наличие JAR-файла BSL Language Server
Таймаут: 5 минут для анализа, 2 минуты для форматирования
Лимиты памяти: настраиваемое выделение памяти JVM
Ошибки разбора: корректная обработка некорректного вывода BSL
Разработка
Структура проекта
mcp-bsl-python/
├── pyproject.toml # Метаданные проекта и зависимости
├── requirements.txt # Зависимости
├── README.md # Этот файл
├── src/
│ └── mcp_bsl/
│ ├── __init__.py
│ ├── server.py # Основная реализация MCP-сервера
│ ├── bsl_runner.py # Обертка запуска JAR BSL
│ └── config.py # Управление конфигурацией
└── .bsl-language-server.json # Пример конфигурации BSLЗапуск тестов
python -m pytest tests/Сборка
python -m buildУстранение неполадок
Типичные проблемы
"Source path does not exist"
Всегда используйте абсолютные пути (например,
C:\dev\project\src\Module.bsl)Относительные пути могут работать некорректно с MCP-сервером
См. PATH_USAGE_GUIDE.md для подробностей
Проверьте, что параметр
srcDirуказывает на существующий файл или каталогПроверьте права доступа к файлам
"Directory contains no BSL/OS files"
Убедитесь, что каталог содержит файлы
.bslили.osПроверьте корректность расширений файлов
Ошибки выполнения Java
Проверьте, что Java установлена и доступна в PATH
Убедитесь, что лимиты памяти JVM заданы разумно
Проверьте совместимость версии JAR BSL Language Server с вашей версией Java
Сообщение "ERROR: BSL analysis stderr detected"
Проблема исправлена — вывод прогресс-бара теперь фильтруется
Отображаются только реальные ошибки
Обновитесь до последней версии, если видите эту проблему
Дублирование сообщений логов
Проблема исправлена — устранено накопление обработчиков
Каждое сообщение лога теперь выводится ровно один раз
См. FIX_DUPLICATE_LOGS.md для деталей
Режим отладки и логирование
Сервер поддерживает уровни логирования, управляемые переменной окружения BSL_LOG_LEVEL:
ERROR (рекомендуется для продакшена) — только критические ошибки
WARNING (по умолчанию) — предупреждения и ошибки
INFO — информационные сообщения
DEBUG — подробная отладочная информация
Чтобы включить отладочное логирование в конфигурации MCP:
{
"mcpServers": {
"bsl-mcp": {
"env": {
"BSL_LOG_LEVEL": "DEBUG"
}
}
}
}Подробности см. в LOGGING_CONFIGURATION.md.
Лицензия
Проект распространяется по лицензии MIT.
Вклад в проект
Сделайте форк репозитория
Создайте feature-ветку
Внесите изменения
Отправьте pull request
Поддержка
Если у вас есть вопросы или вы столкнулись с проблемами:
Создайте issue в репозитории
Изучите существующую документацию
Ознакомьтесь с документацией BSL Language Server
This server cannot be deployed
Maintenance
Related MCP Connectors
Lean 4 MCP server: compile, prove theorems, and formalize math with Mathlib.
The official Svelte MCP server providing docs and autofixing tools for Svelte development
Blazor UI library DRYL: find components, read their exact API and tokens, validate Razor markup.
Manage files and folders directly from your workspace. Read and write files, list directories, cre…
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceMCP server that validates AI-generated 1C:Enterprise (BSL) code against the real platform API. Catches unknown enum values, wrong argument counts, and missing type members by parsing the platform syntax-helper (shcntx_ru.hbk) — independent Rust implementation with built-in expression validator.31-
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to lint, search documentation, and perform metadata scaffolding for 1C:Element projects.549 PyPI3MIT
- AlicenseNot gradedqualityCmaintenanceIntegrates IDEs with the 1C:Напарник API, providing code analysis tools and documentation search for 1C.MIT
- AlicenseAqualityAmaintenanceEnables agents and MCP clients to perform static analysis and code navigation on 1C (BSL) codebases, including diagnostics, callers/callees, definitions, references, complexity metrics, and reindexing.9MIT