mcp-baf

A Python MCP server for BAF, a Ukrainian counterpart to 1C:Enterprise: configuration metadata, queries and full-text BSL code search

MCP server

Medium risk

We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.

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
All reasons and checks

andriy4k07/mcp-baf

Install

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.

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 СтрНайти function

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.

MCP

Transport
stdio
Authentication
API key
Environment variables
Environment variables
mcp_baf_BASE_URL
The database HTTP service URL, defaults to http://localhost:8080/hs/mcp-baf.
mcp_baf_USER
required
The database HTTP service user.
mcp_baf_PASSWORD
required, secret
The HTTP service user's password.
mcp_baf_DUMP_DIR
Path to the configuration dump, enabling the search_code tool.

Security check

  • 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

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.

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.

Editors’ pick

A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review

PluginMedium riskNo VPN needed292.5KRepository stars
Editors’ pick

Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture

SkillLow risk271.4KRepository stars
Editors’ pick

GitHub toolkit for spec-driven development: the specify CLI adds agent commands and skills to a project, from principles to implementation

CLIMedium riskNo VPN needed139.3KRepository stars

Reference MCP servers

Model Context Protocol servers

Official

Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything

MCP serverMedium risk90.6KRepository stars
Foxx AImcp-baf

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.