BSL Search MCP
Read-only MCP-сервис гибридного поиска по коду 1С BSL: BM25 плюс векторный поиск, дедупликация и reranking
Низкий риск
Низкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.
Почему такой уровень
- Все инструменты помечены read-only, сервис не меняет код и не пишет в Elasticsearch
Установка
Ручная установка
cp .env.example .env
docker compose up -d --buildВ .env нужно указать адреса Elasticsearch, embedding и reranker сервисов и при необходимости MCP_AUTH_TOKEN.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервис дает LLM поиск по большому корпусу реального кода 1С: процедурам и функциям конфигураций и БСП, а также документации ИТС и статьям с Habr. Поиск гибридный, BM25 и векторный kNN объединяются через Reciprocal Rank Fusion, near-duplicate методы отсеиваются через SimHash, а итоговый порядок результатов задает внешний reranker. Три MCP-инструмента с подробными описаниями под маленькие модели позволяют искать по смыслу с фильтрами по БСП, репозиторию, типу модуля и директиве, получать полный текст метода по ID и искать по точной сигнатуре. Архитектура состоит из mcp-server, search-api, Elasticsearch, сервиса embeddings и reranker, поднимается через Docker Compose.
Для кого. Для 1С-разработчиков и команд, которые обучают или подключают агента к контексту большой кодовой базы BSL.
Подходит, если
- Нужен поиск по коду 1С и БСП по смыслу запроса, а не по точному тексту
- Нужен контекст реального кода для маленьких моделей с подробными описаниями инструментов
- Важно, чтобы сервис был строго read-only и не мог изменить индекс или код
Не подходит, если
- Нет ресурсов держать Elasticsearch, сервис embeddings и reranker в инфраструктуре
- Нужен поиск только по вашей маленькой конфигурации без корпуса БСП и документации
- Нужна запись или анализ качества кода, а не только поиск
Пример запроса к агенту
Найди в коде 1С похожие методы обработки проведения документа с отбором по БСПОграничения
Разворачивается через Docker Compose с несколькими сервисами: Elasticsearch, embedding и reranker. Корпус собран автором из открытого кода и общедоступных источников, состав и полнота зависят от версии сборки. Лицензия в репозитории не указана. Проект активно меняется, часть документов README в статусе рабочих заметок.
Как отключить. Остановите стек командой docker compose down и удалите сервер из настроек MCP-клиента.
MCP
- Транспорт
- http
- Авторизация
- API-ключ
| Переменные окружения | |
|---|---|
| ELASTICSEARCH_URL обязательная | Адрес Elasticsearch с индексами методов и знаний |
| EMBEDDING_URL обязательная | Адрес сервиса embeddings |
| RERANKER_URL обязательная | Адрес сервиса reranker |
| MCP_AUTH_TOKEN секрет | Токен аутентификации MCP-сервера |
Проверка безопасности
- Все инструменты помечены read-only, сервис не меняет код и не пишет в Elasticsearch
Коротко о README
Двуязычный README на русском и английском описывает архитектуру из mcp-server, search-api, Elasticsearch, embedding и reranker сервисов. Даны таблица переменных окружения, команды запуска через Docker Compose и без него, описание трех MCP-инструментов и отдельный раздел про загрузчик датасета с дедупликацией через SimHash и построением embeddings пакетами. В структуре проекта отдельно вынесены benchmark и tests.
Частые вопросы
Сервис может изменить код или индекс?
Нет, все три инструмента помечены readOnly, сервис только читает и ищет.
Что покрывает корпус?
По README это 380 416 дедуплицированных методов кода из более 451 тысячи исходных, плюс документы ИТС и статьи Habr.
Похожие
Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода
Скиллы Мэтта Покока для инженеров
Skills For Real Engineers
Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура
Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации
Референсные MCP-серверы
Model Context Protocol servers
Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything