An open API service indexing awesome lists of open source software.

https://github.com/alkoleft/mcp-bsl-context

MCP сервер для API платформы 1С:Предприятие
https://github.com/alkoleft/mcp-bsl-context

bsl mcp mcp-server

Last synced: 3 months ago
JSON representation

MCP сервер для API платформы 1С:Предприятие

Awesome Lists containing this project

README

          

# MCP сервер для AI-ассистентов (справка по синтаксису и объектной модели 1С:Предприятие)

**MCP (Model Context Protocol) сервер** — это инструмент для интеграции с AI-ассистентами (например, Claude Desktop, Cursor IDE), предоставляющий быстрый и стандартизированный доступ к справочной информации по встроенным функциям, типам данных, методам и свойствам платформы 1С:Предприятие. MCP сервер позволяет AI-ассистентам работать с "Синтаксис-помощником" 1С в интерактивном режиме.

## Обзор

Приложение `mcp-bsl-context` предназначено исключительно для интеграции с AI-ассистентами, чтобы они могли выполнять поиск по справке платформы 1С:Предприятие и получать детальную информацию о встроенных функциях, типах, методах и свойствах (аналогично работе с "Синтаксис-помощником" или официальной документацией 1С).

### 🤖 Возможности MCP сервера

- **Поиск по справке платформы 1С** — нечеткий поиск по встроенным функциям, методам, свойствам и типам данных
- **Детальная справка** — получение подробной информации о функциях, методах, свойствах и типах, включая сигнатуры и описания
- **Навигация по объектной модели** — просмотр методов и свойств конкретных типов данных
- **Информация о конструкторах** — способы создания объектов платформы 1С
- **Интеграция с AI** — стандартизированный протокол MCP для взаимодействия с AI-ассистентами

Проект использует Spring Boot и Spring AI для создания MCP сервера на базе Kotlin.

## Требования

### Системные требования
- **Java**: версия 17 или выше
- **Операционная система**: Linux, macOS, Windows
- **Память**: минимум 512 МБ RAM для работы приложения
- **Место на диске**: 100 МБ для установки приложения

### Для MCP сервера
- **Платформа 1С Предприятие**: версия 8.3.20 или выше (рекомендуется)
- **MCP клиент**: Claude Desktop, Cursor IDE или другой совместимый MCP клиент
- **Сетевое подключение**: для загрузки зависимостей при первом запуске

### Зависимости времени выполнения
Все необходимые зависимости включены в исполняемый JAR-файл:
- Spring Boot 3.5.0
- Spring AI 1.0.0
- Jackson 2.15.2
- BSL Context Parser
- Kotlin Coroutines

## Сборка

Проект собирается с помощью Gradle. Для сборки выполните следующую команду в корневой директории проекта:

```bash
./gradlew build
```

После успешной сборки исполняемый JAR-файл будет находиться в директории `build/libs/`.

## Использование

### Запуск MCP сервера

```bash
java -jar mcp-bsl-context-<версия>.jar [опции]
```

**Опции:**

- `--platform-path`, `-p` - путь к каталогу установки 1С Предприятия
- `--help`, `-h` - показать справку по использованию
- `--verbose` - включить отладочное логирование

**Примеры:**

```bash
# Основной способ запуска
java -jar mcp-bsl-context-0.2.0.jar --platform-path "/opt/1cv8/x86_64/8.3.25.1257"

# Сокращенная форма
java -jar mcp-bsl-context-0.2.0.jar -p "/opt/1cv8/x86_64/8.3.25.1257"

# Показать справку
java -jar mcp-bsl-context-0.2.0.jar --help

# С дополнительными Spring Boot параметрами
java -jar mcp-bsl-context-0.2.0.jar --platform-path "/opt/1cv8/x86_64/8.3.25.1257" --server.port=8080
```

### Возможности MCP сервера

#### Инструменты (Tools) доступные через MCP:

- **search** - поиск по API платформы 1С Предприятие
- **info** - получение детальной информации об элементе API
- **getMember** - получение информации о методе или свойстве конкретного типа
- **getMembers** - получение полного списка всех методов и свойств для указанного типа
- **getConstructors** - получение списка конструкторов для указанного типа

Подробная документация по использованию MCP сервера доступна в [MCP_SERVER_USAGE.md](documentation/MCP_SERVER_USAGE.md).

## Интеграция с AI клиентами

### Claude Desktop

Добавьте конфигурацию в `claude_desktop_config.json`:

```json
{
"mcpServers": {
"1c-platform": {
"command": "java",
"args": [
"-jar",
"/path/to/mcp-bsl-context.jar",
"--platform-path",
"/opt/1cv8/x86_64/8.3.25.1257"
]
}
}
}
```

### Cursor IDE

Создайте файл `.cursor/mcp.json` в корне проекта:

```json
{
"mcpServers": {
"1c-platform": {
"command": "java",
"args": [
"-jar",
"/path/to/mcp-bsl-context.jar",
"--platform-path",
"/opt/1cv8/x86_64/8.3.25.1257"
]
}
}
}
```

## Алгоритм поиска

Поиск выполняется по принципу нечеткого соответствия с ранжированием:

1. **Точное совпадение** (100 баллов) - имя полностью совпадает с запросом
2. **Префиксное совпадение** (80 баллов) - имя начинается с запроса
3. **Частичное совпадение** (60 баллов) - имя содержит запрос
4. **Совпадение в сигнатуре** (40 баллов) - запрос найден в сигнатуре
5. **Совпадение в описании** (20 баллов) - запрос найден в описании
6. **Fuzzy matching** (0-50 баллов) - на основе расстояния Левенштейна

## Зависимости

Основные зависимости проекта:

- Spring Boot 3.5.0
- Spring AI MCP Server
- Kotlin с Coroutines
- Jackson (для работы с JSON)
- [bsl-context](https://github.com/1c-syntax/bsl-context) (от [1c-syntax](https://github.com/1c-syntax/))
- Logback для логирования

## Лицензия

Этот проект распространяется под лицензией MIT. Подробную информацию смотрите в файле [LICENSE](LICENSE).