MCP server inside 1C
1c_mcp
A 1C extension that runs an MCP server inside the infobase: metadata tools out of the box and custom tools in BSL
- 562 ★ on the repository
- Last commit
Broad access
Why this level
- Gives the agent access to live 1C infobase data
- Direct mode requires publishing the base without authentication
- Custom tools can modify data
Install
- Works in
- Services
Manual install
cp .env.docker.example .env
docker-compose up -dRuns the Python proxy in Docker. Set the 1C URL, login and password in .env; if 1C is on the same host, use host.docker.internal.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- Gives the agent access to live 1C infobase data
- Direct mode requires publishing the base without authentication
- Custom tools can modify data
This is third-party code. Review the repository files before installing.
What it does
The project handles the MCP protocol inside 1C:Enterprise, leaving the developer to write the tool logic. The ready extension is published as an HTTP service, and the agent gets tools for reading configuration metadata. A custom tool is a data processor with two export methods: parameter description and execution. Besides tools it supports resources and prompts. An optional Python proxy adds stdio transport and OAuth2 so you do not have to disable 1C authentication on the web server.
Who it is for. For 1C developers who want to expose their infobase data and functions to an agent.
Good fit when
- You want an agent in Cursor or Claude to see your working configuration metadata
- You want to write your own MCP tools in the 1C language
- You need stdio clients to reach the infobase through a proxy
Not a fit when
- You cannot publish the infobase HTTP services on a web server
- You need to analyze exported sources without a running infobase
Example request
Use MCP to inspect the РеализацияТоваровУслуг document and list its tabular sectionsMCP
- Transport
- http
- Authentication
- not required
Environment variables
MCP_ONEC_URLrequired- 1C HTTP service URL for the proxy
Limitations
Requires publishing the 1C HTTP service on a web server. Direct connection without the proxy requires publishing the base without authentication, which is unsafe, and does not work with stdio clients. The base name case in the URL must match the publication name.
How to disable. Disable the MCP_Сервер extension, unpublish the HTTP service and remove the server from the client settings.
FAQ
Why the Python proxy?
It connects stdio clients and implements OAuth2, passing authorization to 1C via Basic Auth, so infobase authentication stays on.
Can my tools live in a separate extension?
Yes, copy the mcp_MCPСервер subsystem with your own prefix into your extension and the engine picks it up.
Discussion
No questions or reviews yet.
Related
All 1C:Enterprise toolsA 1C extension that runs an MCP server inside the 1C:Enterprise client and lets you write your own tools in BSL
A 1C extension built on vladimir-kharin/1c_mcp that adds execution of arbitrary built-in-language code right in the infobase context
mcp-1c test-base server
mcp-1c
A 1C extension with two HTTP endpoints (query and exec) plus a Python MCP wrapper for Claude Code, built for a test base only
1c-mcp-tools: the application layer of 1C MCP
1c-mcp-tools
A 1C extension with processing-report containers for MCP tools, the application layer where transport and aggregation live in separate components
1C metadata MCP proxy (adapted fork)
1C_MCP_SERVER_OWN
A Python proxy between an MCP client and a 1C HTTP service: reads metadata, object structure and predefined data, with optional OAuth2
1C metadata MCP server
1C_MCP_metadata
An MCP server over a 1C extension's HTTP service that exposes configuration metadata, searches objects and validates query syntax
README in short
The README explains the two parts: the 1C extension as the core and an optional Python proxy. Quick start has three steps: load the cfe, publish the HTTP service and connect a client, with sample settings in mcp_client_settings. It describes three connection options, including the proxy in Docker, and how to develop custom tools. There is a video walkthrough; MIT licensed.