mcp-baf
A Python MCP server for BAF, a Ukrainian counterpart to 1C:Enterprise: configuration metadata, queries and full-text BSL code search
- 0 ★ on the repository
- Last commit
Extended access
Why this level
- The execute_query tool runs queries against the live database, though limited to SELECT only
- The HTTP service user's credentials are stored in the MCP client's config
Install
- Works in
Manual install
git clone https://github.com/andriy4k07/mcp-baf
cd mcp-baf
python -m venv .venv
.venv/bin/pip install -e .Install on Linux/macOS; on Windows use the .venv\Scripts\pip path.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The execute_query tool runs queries against the live database, though limited to SELECT only
- The HTTP service user's credentials are stored in the MCP client's config
This is third-party code. Review the repository files before installing.
What it does
The server publishes an HTTP service inside a BAF database through its own extension and gives an agent nine tools: a metadata tree, object and form structure, configuration info, executing and validating read-only queries, the event log, a reference for 180 built-in BSL functions, and full-text code search with three modes (BM25, regex, exact match) plus built-in bilingual BSL synonyms. Alongside the tools come 11 ready prompts for common tasks: module review, error analysis, duplicate search, query optimization and more. The search index is built from a local configuration dump in a background thread, cached on disk and updated incrementally by file time and size. The project is a Python port of the Go tool feenlace/mcp-1c with the same tools and prompts.
Who it is for. For developers on the BAF platform (a Ukrainian counterpart to 1C:Enterprise UNF, architecturally compatible with 1C:Enterprise) who need agent access to a live database and configuration code through MCP.
Good fit when
- You need to show an agent the metadata and form structure of a BAF configuration
- You need full-text search over module code with Russian and English BSL function synonyms
- You need read-only parameterized queries against a live database and a BSL function reference without the platform running
Not a fit when
- You work on classic 1C:Enterprise rather than BAF: the server's extension targets BAF
- On macOS: platform HTTP services are not supported there, you need a Windows VM
Example request
Show the structure of my configuration and find all the places that use the СтрНайти functionMCP
- Transport
- stdio
- Authentication
- API key
Environment variables
mcp_baf_BASE_URL- The database HTTP service URL, defaults to http://localhost:8080/hs/mcp-baf.
mcp_baf_USERrequired- The database HTTP service user.
mcp_baf_PASSWORDrequired, secret- The HTTP service user's password.
mcp_baf_DUMP_DIR- Path to the configuration dump, enabling the search_code tool.
Limitations
Full-text code search needs a manual DumpConfigToFiles export and the --dump flag; without it only the other tools work. The HTTP service is not supported by the BAF platform on macOS, and the undocumented /HTTPPort flag only works on Windows. The minimum supported platform version is 8.3.10. Requires Python 3.11+ and a separate extension install into the database.
How to disable. Remove mcp-baf from the MCP client config and disable the MCPService extension in the database via the extensions list in the Configurator.
FAQ
Does it work with Russian 1C:UNF?
The project targets the BAF platform, a Ukrainian counterpart to 1C:UNF. There is a --lang ru option for Russian extension object synonyms, but the target platform is not 1C.
Do I need internet or a cloud AI?
No, the server is a local process and works with any MCP client, including local models like Ollama; database data goes nowhere except the chosen client.
Discussion
No questions or reviews yet.
Related
MCP servers1C Templates MCP server
MCP сервер шаблонов 1С
An MCP server for storing and searching your own BSL code templates, with a web editor and syntax highlighting
A single-binary Go MCP server: the agent sees 1C metadata, searches code, runs read-only queries and writes accurate BSL
An MCP server with hybrid search over 2262 community BSL code templates and a CRUD web interface built on Monaco Editor
MCP wrapper for BSL Language Server
BSL MCP Server
A small MCP server that runs BSL Language Server as a JAR file and gives an agent BSL code analysis and formatting as JSON
MCP server with the 1C platform reference and validation of BSL code against the real API of a chosen platform version
A read-only MCP service for hybrid 1C BSL code search: BM25 plus vector search, deduplication and reranking
README in short
The README, written in Ukrainian, describes the server as a port of the Go project feenlace/mcp-1c and lists nine tools, 11 prompts, three code search modes with BSL synonyms, and a disk-based index cache. It gives install steps: cloning, installing the package, installing the extension via --install, publishing the HTTP service and configuring an MCP client, including a dedicated Claude Code command. Tables cover configuration flags, environment variables, logging and OS/client compatibility. MIT license.