Rules MCP: разбор правил обмена 1С

rules-mcp

MCP-сервер разбирает правила обмена 1С формата Конвертация данных 2.0 и отвечает на вопросы о них в чате, без модели в самом разборе

MCP-сервер

Низкий риск

Низкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.

Почему такой уровень

  • Только читает локальные файлы правил обмена, не подключается к боевой базе
  • Инструмент перечитывания правил защищен паролем
Все причины и проверки
Российский стек

kopyshok/rules-mcp

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add mcp/rules-mcp

Определит агенты на машине, проверит риск и зафиксирует версию.

Другие способы установки

Собрано автоматически, проверьте перед установкой.

Выполните в терминале

claude mcp add --transport http rules-mcp http://rules-mcp:8000/mcp

Или добавьте в файл .mcp.json, в проекте

{
  "mcpServers": {
    "rules-mcp": {
      "type": "http",
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcpServers.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Установить в Cursor

Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.

Добавьте в файл ~/.cursor/mcp.json, для всех проектов

{
  "mcpServers": {
    "rules-mcp": {
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Для одного проекта тот же блок кладут в .cursor/mcp.json.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Установить в VS Code

Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.

Выполните в терминале

code --add-mcp '{"name":"rules-mcp","type":"http","url":"http://rules-mcp:8000/mcp"}'

Или добавьте в файл .vscode/mcp.json, в проекте

{
  "servers": {
    "rules-mcp": {
      "type": "http",
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа servers.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Выполните в терминале

codex mcp add rules-mcp --url http://rules-mcp:8000/mcp

Или добавьте в файл ~/.codex/config.toml, для всех проектов

[mcp_servers.rules-mcp]
url = "http://rules-mcp:8000/mcp"

Если файл уже есть, допишите блок в конец.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Выполните в терминале

gemini mcp add -s user -t http rules-mcp http://rules-mcp:8000/mcp

Или добавьте в файл ~/.gemini/settings.json, для всех проектов

{
  "mcpServers": {
    "rules-mcp": {
      "httpUrl": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcpServers.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Добавьте в файл ~/.config/devin/mcp_config.json, для всех проектов

{
  "mcpServers": {
    "rules-mcp": {
      "serverUrl": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcpServers. В легаси Cascade конфиг MCP лежит в ~/.codeium/windsurf/mcp_config.json.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Бывший Windsurf.

Добавьте в файл cline_mcp_settings.json, для всех проектов

{
  "mcpServers": {
    "rules-mcp": {
      "type": "streamableHttp",
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Файл настроек открывается в Cline: вкладка MCP Servers, кнопка Configure MCP Servers.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Добавьте в файл .roo/mcp.json, в проекте

{
  "mcpServers": {
    "rules-mcp": {
      "type": "streamable-http",
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcpServers.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Форк Roo Code, папки .roo те же.

Добавьте в файл opencode.json, в проекте

{
  "mcp": {
    "rules-mcp": {
      "type": "remote",
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа mcp.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Добавьте в файл ~/.config/zed/settings.json, для всех проектов

{
  "context_servers": {
    "rules-mcp": {
      "url": "http://rules-mcp:8000/mcp"
    }
  }
}

Если файл уже есть, добавьте сервер внутрь ключа context_servers.

Ключи и настройки

GITLAB_REPOнеобязательная
Адрес репозитория с правилами по HTTPS. Пусто — работать с тем, что уже лежит в RULES_DIR
GITLAB_TOKENсекрет, необязательная
Токен на чтение репозитория
GITLAB_BRANCHнеобязательная
Ветка с правилами. Пусто — ветка по умолчанию
RULES_SUBDIRнеобязательная
Подкаталог внутри репозитория, если папки направлений лежат не в корне
REFRESH_INTERVALнеобязательная
Период опроса, секунды. 0 — не опрашивать
REFRESH_PASSWORDсекрет, необязательная
Пароль для refresh_rules. Не задан — команда недоступна
RULES_DIRнеобязательная
Каталог с направлениями. При работе из репозитория клон кладётся в /data/checkout
HOSTнеобязательная
Адрес прослушивания
PORTнеобязательная
Порт прослушивания

Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.

Сверено с репозиторием 26 сент. 2026, коммит 0983e36.

Текст для агента

Разложи выгрузку правил обмена КД 2.0 по папкам направлений в корне репозитория, настрой переменные окружения из .env.example, запусти сервер командой docker compose up или напрямую server.py, и подключи rules-mcp к Open WebUI.

Другие способы из описания автора
docker compose up -d

Запуск сервера в Docker после настройки .env по примеру .env.example.

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Сервер один раз разбирает многомегабайтные XML-файлы правил обмена (ExchangeRules.xml и RegistrationRules.xml формата КД 2.0) в индекс в памяти обычной программой, без участия модели, и токены тратятся только на ответы. Восемь инструментов отвечают на вопросы: обзор направлений обмена, трассировка документа от регистрации до приемника, карточка правила конвертации целиком, поиск по коду или тексту, полный текст обработчика правила или реквизита постранично с номерами строк, разбор запросов обработчика на отдельные запросы и временные таблицы, требования правил к реквизитам приемника для сверки с конфигурацией. Инструменты понимают и общие алгоритмы, которые правила вызывают через Выполнить(Алгоритмы.Имя), и обработчики отдельных реквизитов.

Для кого. Для 1С-разработчиков, которые разбирают или отлаживают обмены на Конвертации данных 2.0 и хотят задавать вопросы о правилах прямо в чате.

Подходит, если

  • Нужно быстро понять, что делает конкретное правило конвертации, не открывая XML руками
  • Нужна трассировка, где и как обрабатывается документ при обмене
  • Нужна сверка того, что правила ожидают от конфигурации приемника, с реальными реквизитами

Не подходит, если

  • Обмен построен на Конвертации данных 3 (EnterpriseData): сервер поддерживает только КД 2.0
  • Нужен готовый MCP-сервер для чтения самой конфигурации 1С: rules-mcp работает только с файлами правил обмена

Пример запроса к агенту

Покажи, что происходит с документом РеализацияТоваровУслуг при обмене УПП в ERP, и где стоит вызов каждого правила

Ограничения

Поддерживается только Конвертация данных 2.0, EnterpriseData (КД 3) не читается. Правила должны лежать локально в определенной структуре папок по направлению обмена. Файл CorrespondentExchangeRules.xml не читается. Индекс живет в памяти без базы данных, инструмент refresh_rules для перечитывания защищен паролем.

Как отключить. Остановите контейнер или процесс сервера и удалите запись rules-mcp из настроек MCP-клиента Open WebUI.

MCP

Транспорт
stdio, http
Авторизация
не нужна
Переменные окружения
Переменные окружения
RULES_REFRESH_PASSWORD
секрет
Пароль для инструмента refresh_rules, который перечитывает правила из репозитория.

Проверка безопасности

  • Только читает локальные файлы правил обмена, не подключается к боевой базе
  • Инструмент перечитывания правил защищен паролем

Коротко о README

README объясняет проблему: правила обмена это десятки мегабайт XML со встроенным кодом, читать их вслепую или целиком нельзя. Сервер разбирает их один раз в индекс и отвечает точечно. Перечислены восемь инструментов с назначением, структура папок для хранения правил по направлениям обмена и идея связки с отдельным сервером, читающим конфигурации 1С, для автоматической сверки.

Частые вопросы

Участвует ли языковая модель в разборе правил?

Нет, разбор XML делает обычная программа, токены модели тратятся только на то, что инструмент вернул в чат.

Можно ли сверить правила с реальной конфигурацией?

Да, если рядом подключен сервер, читающий конфигурации 1С, например rlm-tools-bsl, модель сравнивает данные из rules-mcp с реальными реквизитами.

Выбор редакции

Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода

ПлагинСредний рискБез VPN292,5 тыс.Звезды репозитория
Выбор редакции

Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура

СкиллНизкий риск271,4 тыс.Звезды репозитория
Выбор редакции

Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации

CLIСредний рискБез VPN139,3 тыс.Звезды репозитория

Референсные MCP-серверы

Model Context Protocol servers

Официальный

Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything

MCP-серверСредний риск90,6 тыс.Звезды репозитория
Foxx AIRules MCP: разбор правил обмена 1С

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.