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

MCP serverHigh riskRussian stack

vladimir-kharin/1c_mcp

Install

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

Runs 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.

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 sections

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.

MCP

Transport
http
Authentication
not required
Environment variables
Environment variables
MCP_ONEC_URL
required
1C HTTP service URL for the proxy

Security check

  • Gives the agent access to live 1C infobase data
  • Direct mode requires publishing the base without authentication
  • Custom tools can modify data

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.

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.

Editors’ pick

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

PluginMedium risk286.7K
Editors’ pick

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

SkillLow risk262.1K
Editors’ pick

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

CLIMedium risk136.8K

Reference MCP servers

Model Context Protocol servers

Editors’ pick

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

MCP serverMedium risk90.3K