loading…
Search for a command to run...
loading…
Provides storage, searching, and retrieval of 1C (BSL) code templates with a built-in web interface for easy template management. It enables AI assistants to fe
Provides storage, searching, and retrieval of 1C (BSL) code templates with a built-in web interface for easy template management. It enables AI assistants to fetch specific boilerplate code directly into editors using natural language search.
MCP-сервер для хранения и поиска шаблонов BSL-кода. Управление шаблонами — через веб-интерфейс с BSL Console (подсветка синтаксиса 1С).
run.bat
Скрипт собирает Docker-образ и запускает контейнер с маппингом data/templates/ на хост.
Или вручную:
docker build -t mcp-templates .
docker run -d --name mcp-templates -p 8023:8023 \
-v "$(pwd)/data/templates:/app/data/templates" \
-e TEMPLATES_DIR=/app/data/templates \
--restart unless-stopped mcp-templates
Откройте в браузере: http://localhost:8023
Сервер использует транспорт Streamable HTTP. В настройках MCP укажите:
{
"mcpServers": {
"1c-templates": {
"type": "streamableHttp",
"url": "http://localhost:8023/mcp"
}
}
}
| Инструмент | Описание |
|---|---|
list_templates() |
Список всех шаблонов (id, name, description, tags) |
get_template(template_id) |
Полный шаблон с кодом по id |
search_templates(query) |
Поиск по подстроке в названии, описании и тегах |
Поиск нечёткий: регистр и ё/е игнорируются, для слов длиннее 4 символов работает префиксный поиск (находит падежи).
В чате напишите:
Найди шаблон для работы с Excel и вставь код в текущий модуль
Cursor через MCP вызовет search_templates("excel"), получит id шаблона, затем get_template(id) — и вернёт BSL-код.
Шаблоны хранятся в data/templates/ (Docker volume, данные сохраняются при пересборке):
index.json — метаданные всех шаблонов (id, name, description, tags)<id>.bsl — BSL-код каждого шаблонаСоздайте файл data/templates/my_template.bsl с кодом, а в index.json добавьте запись:
{
"my_template": {
"id": "my_template",
"name": "Мой шаблон",
"description": "Описание",
"tags": ["тег1", "тег2"]
}
}
Новые .bsl-файлы без записи в index.json подхватываются автоматически при следующем обращении к списку.
.
├── Dockerfile
├── run.bat # Сборка и запуск контейнера
├── app/
│ ├── main.py # HTTP-сервер + MCP (stdlib Python, без зависимостей)
│ └── storage.py # CRUD: index.json + .bsl файлы
└── data/
└── templates/ # Шаблоны (volume, ~30 шаблонов в комплекте)
├── index.json
└── *.bsl
Сервер написан на чистом stdlib Python — никакого pip, виртуальных окружений или сторонних пакетов.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"1c-templates-mcp-server": {
"command": "npx",
"args": []
}
}
}