BSL Search MCP

A read-only MCP service for hybrid 1C BSL code search: BM25 plus vector search, deduplication and reranking

  • 3 ★ on the repository
  • Last commit
MCP server

Extended access

Why this level

  • Starts Elasticsearch, an embedding service, a reranker and the MCP server via Docker Compose
  • The tools only search the 1C code corpus and change nothing in it
All reasons and checks
Russian stack

axel-avb/mcp-bsl-search

Install

Manual install

cp .env.example .env
docker compose up -d --build

Fill .env with the Elasticsearch, embedding and reranker service addresses, and MCP_AUTH_TOKEN if you use one.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Starts Elasticsearch, an embedding service, a reranker and the MCP server via Docker Compose
  • The tools only search the 1C code corpus and change nothing in it

This is third-party code. Review the repository files before installing.

What it does

The service gives an LLM search over a large corpus of real 1C code: configuration and BSP procedures and functions, plus its.1c.ru documentation and Habr articles. Search is hybrid, combining BM25 and vector kNN through Reciprocal Rank Fusion; near-duplicate methods are filtered by SimHash, and a separate reranker sets the final order. Three MCP tools with detailed descriptions for small models let you search by meaning with filters on BSP, repository, module type and directive, fetch a method's full body by ID, and search by exact signature. The architecture is mcp-server, search-api, Elasticsearch, an embedding service and a reranker, brought up with Docker Compose.

Who it is for. For 1C developers and teams giving an agent context over a large BSL codebase.

Good fit when

  • You need to search 1C and BSP code by meaning rather than exact text
  • You need real code context for small models with verbose tool descriptions
  • It matters that the service is strictly read-only and cannot change the index or code

Not a fit when

  • You cannot run Elasticsearch plus embedding and reranker services in your infrastructure
  • You only need search over your small configuration, not the BSP and documentation corpus
  • You need code writing or quality analysis, not just search

Example request

Find similar document-posting methods in 1C code, filtered to BSP

MCP

Transport
http
Authentication
key is optional

Environment variables

ELASTICSEARCH_URL required
Elasticsearch address for the methods and knowledge indexes
EMBEDDING_URL required
Embedding service address
RERANKER_URL required
Reranker service address
MCP_AUTH_TOKEN secret
MCP server authentication token

Limitations

It runs through Docker Compose with several services: Elasticsearch, embedding and reranker. The corpus is built by the author from open code and public sources, and its coverage depends on the build. No license file is present. The project changes actively, and part of the README reads as working notes.

How to disable. Stop the stack with docker compose down and remove the server from your MCP client settings.

FAQ

Can the service change code or the index?

No, all three tools are marked readOnly; the service only reads and searches.

What does the corpus cover?

Per the README, 380,416 deduplicated code methods from over 451,000 source methods, plus its.1c.ru documents and Habr articles.

Discussion

No questions or reviews yet.

Russian stack

A local read-only MCP server for 1C code search on the Zoekt engine: fast lexical and regex search over your own configuration dumps

MCP serverExtended access
Russian stack

An MCP server for Cursor and Claude Desktop with hybrid embeddings and BM25 search over 1C platform help, the query language and the standard subsystems library

MCP serverExtended access7Repository stars
Russian stack

A Dockerized MCP server for searching 1C dumps: structural index, call graph and semantic code search

MCP serverExtended access79Repository stars
Russian stack

An MCP server with hybrid search over 2262 community BSL code templates and a CRUD web interface built on Monaco Editor

MCP serverBroad access31Repository stars
Russian stack

A local MCP server for semantic search over an exported 1C configuration, with a choice of embedding model and vector database

MCP serverExtended access11Repository stars
Russian stack

Docker services with hybrid search (FTS5 plus embeddings) over the 1C platform syntax helper, exported from 1C:EDT by a Tycho plugin

MCP serverExtended access2Repository stars

README in short

The bilingual Russian and English README describes an architecture of mcp-server, search-api, Elasticsearch, embedding and reranker services. It gives an environment variable table, Docker Compose and no-Docker run commands, a description of the three MCP tools, and a separate section on the dataset loader with SimHash deduplication and batched embedding builds. The project layout keeps benchmark and tests as separate folders.

README badge

Report a problem