onec-mcp

Loads a 1C configuration XML export into Neo4j and gives read-only MCP access to metadata, BSL routines and rights via text and full-text search

  • 1 ★ on the repository
  • Last commit
MCP server

Extended access

Why this level

  • Brings up a Docker stack with Neo4j that builds a graph from a 1C XML export
  • MCP tools only read the graph, loading is a separate command
All reasons and checks
Russian stack

youngpadovan/onec-mcp

Install

Manual install

python scripts/docker/start_docker.py

Brings up Neo4j and the MCP server, waits for Neo4j to be ready, and runs load_config from ONEC_ERP_XML_HOST.

Access and checks

How we review

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

  • Brings up a Docker stack with Neo4j that builds a graph from a 1C XML export
  • MCP tools only read the graph, loading is a separate command

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

What it does

A Docker stack parses a 1C configuration XML export and builds a Neo4j graph: metadata objects, BSL routines and functions with CALLS edges, and roles and rights from Rights.xml. The agent gets about 25 MCP tools: a list of metadata kinds, objects and their cards, roles by object, an overview with a dossier and routine index, full module or single-procedure text by qualified_name, a call graph to a given depth, a comparison of two roles' grants, and trusted Cypher templates for graph reports. Procedure and metadata search works only by substring and Neo4j full-text index, no vector embeddings.

Who it is for. For 1C analysts and developers who need a local configuration graph for navigating metadata, code and rights without the cloud.

Good fit when

  • You need to find which roles grant access to a metadata object
  • You need to find every caller of a procedure and trace a call chain
  • You want a local knowledge base for the configuration without sending code out

Not a fit when

  • You need a full static call analysis: the CALLS graph is heuristic and does not resolve dynamic Выполнить
  • You need semantic code search: only text and full-text search are available

Example request

Which roles grant access to Справочник.Номенклатура, and who calls the ПроверитьЗаказ procedure

MCP

Transport
http
Authentication
not required

Environment variables

ONEC_ERP_XML_HOST required
Host path to the root of the 1C configuration XML export.
NEO4J_PASSWORD required, secret
Password for the Neo4j database, set in docker/.env.
ONEC_OPENAI_API_KEY secret
Key for the optional natural-language-to-Cypher translation feature.

Limitations

The tool only reads the graph, never writes back to Neo4j, and does not run the export from 1C itself. The CALLS call graph is a text-based heuristic, not a full static analysis. One Neo4j instance holds one configuration; a second one needs a separate Compose project. A large ERP export needs tens of gigabytes of RAM.

How to disable. Stop the stack with docker compose -f docker/docker-compose.yml down and remove the server from your MCP client configuration.

FAQ

Does procedure search use vector embeddings?

No, search runs only on substring and the Neo4j routine_search full-text index, with no Ollama or vector fields.

Can arbitrary Cypher be written to the database from chat?

No, only dedicated tools and trusted templates from a registry are available; write-Cypher from chat is not supported.

Discussion

No questions or reviews yet.

Russian stack

A Neo4j graph of 1C configuration metadata and code with MCP tools, a web console and a built-in search agent

MCP serverExtended access111Repository stars

1C configuration graph MCP server

1C Configuration MCP Server

Russian stack

An MCP server builds a metadata and call graph from a 1C configuration's XML and BSL export, with optional semantic search via an external embedder and Qdrant

MCP serverExtended access4Repository stars
Russian stack

Five independent Docker-based MCP servers: a Neo4j metadata and call graph, static BSL analysis, platform syntax help, a query builder and 1C coding standards

MCP serverExtended access
Russian stack

An MCP server and portable admin tool for analyzing an exported 1C XML configuration: object listing, metadata structure, code search

MCP serverExtended access2Repository stars
Russian stack

A local knowledge graph of a 1C configuration for an agent: Memgraph and ONNX embeddings with no cloud, for bases with hundreds of thousands of routines

MCP serverExtended access12Repository stars
Russian stack

A Docker server with a read-only core and pluggable modules: metadata, code, forms and relations of several 1C configurations through one MCP contract

MCP serverExtended access12Repository stars

README in short

The bilingual README describes the flow from ONEC_ERP_XML_HOST through load_config into Neo4j and MCP on port 8840, a table of the main MCP tools, the principle of trusted Cypher templates instead of free-form write-Cypher, a responsibility split between chat, MCP and load_config, a security section on non-exposed ports and a mandatory Neo4j password, and limitations around the CALLS graph being heuristic.

README badge

Report a problem