mcp server for working with xml dump of 1C codebase
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"1c-mcp-server": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
MCP-сервер для анализа дампа конфигурации 1С (выгрузка в файлы XML): метаданные объектов, поиск использований в BSL и формах, чтение фрагментов модулей и связанные операции. Работает через транспорт STDIO (типичный сценарий для Cursor и других MCP-клиентов) или HTTP (streamable MCP с опциональной авторизацией).
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in other
Persistent memory using a knowledge graph
Privacy-first. MCP is the protocol for tool access. We're the virtualization layer for context.
Pre-build reality check. Scans GitHub, HN, npm, PyPI, Product Hunt — returns 0-100 signal.
Make HTTP requests and fetch web content
MCP Security Weekly
Get CVE alerts and security updates for 1c Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
MCP-сервер для анализа дампа конфигурации 1С (выгрузка в файлы XML): метаданные объектов, поиск использований в BSL и формах, чтение фрагментов модулей и связанные операции. Работает через транспорт STDIO (типичный сценарий для Cursor и других MCP-клиентов) или HTTP (streamable MCP с опциональной авторизацией).
Автор: Stanislav Shulich · Лицензия: MIT
Инструменты MCP (основные):
| Инструмент | Назначение |
|---|---|
usage_guide | Подсказки по сценариям использования API |
ping | Проверка доступности |
resolve | Разрешение произвольного текста в канонические идентификаторы объектов метаданных |
getmeta | Карточка объекта (метаданные, с ограничением объёма ответа) |
metarelations | Граф связей вокруг объекта |
usedinbsl | Где объект используется в модулях BSL |
usedinxml | Использование в XML (формы, макеты и т.п.) |
readchunk | Чтение фрагмента файла по строке (для точечного просмотра кода) |
findanchors | Поиск якорных строк для последующего readchunk |
batch_resolve, batch_getmeta, batch_usedin | Пакетные операции |
getsynonyms, searchbysynonym | Синонимы и поиск по синонимам |
getforms, getmovements | Формы объекта и движения по регистрам |
Поверх данных строится индекс для BSL/XML; при старте возможна фоновая пересборка индексов.
Configuration.xml (типичная выгрузка конфигурации в файлы).go install github.com/Sshulich/1c-mcp-server@latest
Сборка из исходников:
git clone https://github.com/Sshulich/1c-mcp-server.git
cd 1c-mcp-server
go build -ldflags "-X main.version=1.0.0 -X main.commit=$(git rev-parse --short HEAD)" -o 1c-mcp-server .
Важно: переменная
CONFIG_DUMP_DIRдолжна указывать на корень дампа до запуска бинарника (см. ниже).
Сервер читает метаданные только с диска. Задайте каталог выгрузки:
# Windows (PowerShell)
$env:CONFIG_DUMP_DIR = "D:\dump\MyConfig"
# Linux / macOS
export CONFIG_DUMP_DIR=/path/to/configuration/dump
В этом каталоге должен находиться Configuration.xml. При необходимости подхватываются расширения конфигурации, обнаруженные рядом с дампом.
Подходит для встраивания в IDE. Пример переменных:
export CONFIG_DUMP_DIR=/path/to/dump
./1c-mcp-server
# или явно:
export MCP_TRANSPORT=stdio
Streamable HTTP MCP (по умолчанию слушает :8080):
export CONFIG_DUMP_DIR=/path/to/dump
export MCP_TRANSPORT=http
export MCP_HTTP_ADDR=:8080
./1c-mcp-server
Эндпоинты:
/ — MCP (при включённой авторизации — заголовок Authorization: Bearer <token>).GET /version — версия сборки (без авторизации).GET /metrics — метрики Prometheus (без авторизации)./admin/* — административные операции только при заданном MCP_ADMIN_TOKEN.Если MCP_AUTH_TOKENS не задан, сервер не требует Bearer-токен для MCP: так нельзя выставлять в открытый интернет без reverse proxy и сетевых ограничений.
Рекомендуется:
MCP_AUTH_TOKENS (через запятую) или флаг -auth-tokens;MCP_ADMIN_TOKEN;Пример:
export MCP_AUTH_TOKENS="your-long-random-secret"
export MCP_ADMIN_TOKEN="another-long-secret"
Опционально: --config path/to/mcp.yaml (или mcp.json). В конфиге можно задать транспорт, адрес HTTP, токены, каталог логов сессий, таймауты и параметры LRU-кеша для resolve/getmeta. Поля см. в internal/config/config.go.
Локальные файлы с секретами удобно де