conf-doc: семантический поиск по конфигурации 1С
Документация из конфигурации 1С (conf-doc)
MCP-сервер для Cursor с веб-интерфейсом: индексирует выгрузку конфигурации 1С один раз на сервере и дает агенту семантический поиск по документации
Низкий риск
Низкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.
Почему такой уровень
- Только читает и индексирует XML-выгрузку, не пишет в базу или конфигурацию
- Веб-интерфейс и HTTP API без встроенной аутентификации, открывать наружу небезопасно
Установка
Ручная установка
copy config.docker.example.yaml config.yaml
docker compose build
docker compose up -dПоднимает backend с API и локальными эмбеддингами.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервер парсит стандартную выгрузку конфигуратора в файлы (справочники, документы, перечисления, регистры) и строит по ней markdown-документацию, структурный индекс в SQLite и векторный индекс FAISS. Индексация делается один раз через веб-интерфейс или CLI, а в Cursor подключается тонкий stdio MCP-клиент conf-doc mcp, у которого нет прямого доступа к файлам выгрузки, только к HTTP API. Агент получает инструменты семантического поиска, чтения карточки объекта и конкретного фрагмента справки. Поиск по умолчанию работает на локальных эмбеддингах sentence_transformers без ключей и сети, есть возможность переключиться на эмбеддинги OpenAI-совместимого API для лучшего качества. Отдельная опциональная надстройка RAG через conf_doc_query отвечает на вопрос целиком, если на сервере настроен провайдер LLM: Ollama или OpenAI, по умолчанию выключен.
Для кого. Для 1С-разработчиков в Cursor, которым нужен быстрый семантический поиск по большой конфигурации без ручного просмотра XML-выгрузки.
Подходит, если
- Нужно быстро найти нужный объект или реквизит по смыслу вопроса, а не по точному имени
- Нужен единый индексированный сервер, который обслуживает нескольких агентов и несколько конфигураций одновременно
- Нужен локальный поиск без ключей и без отправки кода во внешние сервисы
Не подходит, если
- Нет XML-выгрузки конфигуратора в файлы, только файловая или серверная ИБ без экспорта
- Порт веб-интерфейса нельзя закрыть от внешнего доступа: README прямо предупреждает не открывать его наружу без reverse proxy и аутентификации
- Роли конфигурации нужно искать семантически: README отдельно уточняет, что роли не попадают в FAISS, для них только точный поиск по правам
Пример запроса к агенту
Найди в конфигурации, где хранятся реквизиты документа Отпуск, и покажи полный текст справкиОграничения
Веб-интерфейс и HTTP API не имеют встроенной аутентификации, README прямо предупреждает не открывать порт наружу без reverse proxy. RAG-эндпоинт /query по умолчанию выключен (llm.provider: none) и возвращает HTTP 503, пока на сервере явно не настроен Ollama или OpenAI. Переключение на API-эмбеддинги меняет размерность вектора и требует полной пересборки индекса. Тот же автор развивает смежный проект с ботом на OData (1c-odata-skill), где conf-doc используется как один из компонентов, так что часть логики может пересекаться.
Как отключить. Остановите контейнер командой docker compose down и удалите блок conf-doc mcp из .cursor/mcp.json.
MCP
- Транспорт
- stdio
- Авторизация
- не нужна
| Переменные окружения | |
|---|---|
| CONF_DOC_API_URL обязательная | Базовый URL HTTP API, к которому мостится MCP-клиент. |
| CONF_DOC_CONFIGURATION | Имя конфигурации по умолчанию, если в базе несколько. |
| CONF_DOC_API_TIMEOUT | Таймаут HTTP-запросов в секундах, по умолчанию 60. |
Проверка безопасности
- Только читает и индексирует XML-выгрузку, не пишет в базу или конфигурацию
- Веб-интерфейс и HTTP API без встроенной аутентификации, открывать наружу небезопасно
Коротко о README
README подробно описывает быстрый старт с Docker и локальной индексацией через веб-UI, полный список из семи MCP-инструментов и переменных окружения, HTTP API с эндпоинтами управления конфигурациями и задачами, отдельный раздел про различие поиска на эмбеддингах и опционального RAG через LLM, сравнение локального и API-провайдера эмбеддингов, структуру output/ с хранилищами XML, markdown, FAISS и SQLite, и упоминание проектного скилла conf-doc-search для Cursor Agent.
Частые вопросы
Нужен ли LLM для базового поиска?
Нет, семантический поиск строится на эмбеддингах и работает без LLM, языковая модель нужна только опциональному RAG-эндпоинту /query.
Можно искать без сети и без API-ключа?
Да, Docker-сборка по умолчанию использует локальную модель эмбеддингов sentence_transformers, скачиваемую один раз в том model-cache.
Похожие
Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода
Скиллы Мэтта Покока для инженеров
Skills For Real Engineers
Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура
Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации
Референсные MCP-серверы
Model Context Protocol servers
Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything