1C MCP Server with a FastAPI proxy

1C MCP Server

A 1C extension with an MCP HTTP service plus a Python FastAPI proxy that adds stdio transport, OAuth2 and Docker deployment

  • 0 ★ on the repository
  • Last commit
MCP server

Extended access

Why this level

  • The proxy stores the 1C user's login and password in environment variables
  • The extension's HTTP service gives access to the published infobase's data and metadata
All reasons and checks
Russian stack

questguiderf/1c-mcp

Install

Manual install

cd src && python -m venv .venv && . .venv/bin/activate && pip install -r py_server/requirements.txt && python -m py_server

Runs the Python proxy locally with fastapi, uvicorn, httpx, pydantic and mcp as dependencies.

Access and checks

How we review

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

  • The proxy stores the 1C user's login and password in environment variables
  • The extension's HTTP service gives access to the published infobase's data and metadata

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

What it does

The project offers two ways to connect an MCP client to 1C: directly to the extension's published mcp_APIBackend HTTP service, or through a Python FastAPI proxy that adds stdio transport for clients without HTTP support, OAuth2 authorization, and pass-through authentication into the 1C backend. The extension ships as a ready .cfe file, and the proxy runs locally via venv or in Docker with environment variables for the 1C infobase address, username and password. The repository includes example configs for Claude Code, Claude Desktop, Cursor and Kilo Code.

Who it is for. For 1C developers who need a ready MCP server with flexible transport and centralized authorization, not just a direct HTTP connection.

Good fit when

  • You need stdio transport for an MCP client that cannot talk HTTP directly
  • You need centralized OAuth2 authorization in front of the 1C backend
  • Docker deployment with a ready compose file is more convenient for you

Not a fit when

  • A direct HTTP connection to the extension without a proxy is enough
  • You are not ready to publish the mcp_APIBackend HTTP service in your infobase

Example request

Connect to 1C through the MCP proxy and show the metadata of the Nomenclature catalog

MCP

Transport
http, stdio
Authentication
API key

Environment variables

MCP_ONEC_URL required
URL of the published 1C infobase.
MCP_ONEC_USERNAME required
1C user login.
MCP_ONEC_PASSWORD required, secret
1C user password.
MCP_AUTH_MODE
Proxy authorization mode: none or oauth2.

Limitations

The extension has to be installed in the infobase and its HTTP service published; the README does not walk through importing the .cfe step by step. The 1C user password is passed to the proxy via environment variables. The project is small, with one author, no releases and no stars.

How to disable. Stop or remove the Python proxy, disable the mcp_APIBackend extension in the 1C infobase, and remove the server from your MCP client settings.

FAQ

Is the Python proxy required?

No, the README lists it as the recommended option for stdio transport and centralized authorization, but you can also connect directly to the extension's HTTP service.

How do I enable OAuth2?

Set the MCP_AUTH_MODE variable to oauth2 in the proxy configuration.

How is the 1C MCP Server with a FastAPI proxy different from other 1C MCP servers?

The project gives two ways to connect: directly to the published mcp_APIBackend HTTP service of the 1C extension or through a Python FastAPI proxy that adds a stdio transport for clients without HTTP, OAuth2 and Docker launch.

Is the Python proxy required and how do I enable OAuth2?

No, a client with HTTP support connects to the extension directly. The proxy is needed for stdio, OAuth2 and Docker. OAuth2 parameters are set in the proxy config, see the README. It works in Claude Code, Claude Desktop and Cursor.

Discussion

No questions or reviews yet.

Russian stack

A 1C extension that runs an MCP server inside the infobase: metadata tools out of the box and custom tools in BSL

MCP serverBroad access573Repository stars
Russian stack

A 1C extension with two HTTP endpoints (query and exec) plus a Python MCP wrapper for Claude Code, built for a test base only

MCP serverBroad access
Russian stack

A Python proxy between an MCP client and a 1C HTTP service: reads metadata, object structure and predefined data, with optional OAuth2

MCP serverExtended access9Repository stars
Russian stack

A 1C extension built on vladimir-kharin/1c_mcp that adds execution of arbitrary built-in-language code right in the infobase context

MCP serverBroad access5Repository stars
Russian stack

A 1C extension that runs an MCP server inside the 1C:Enterprise client and lets you write your own tools in BSL

MCP serverExtended access71Repository stars
Russian stack

A 1C external data processor with MCP and REST API: queries, metadata, event log and code execution without changing the configuration

MCP serverBroad access359Repository stars

README in short

The README describes the combination of a 1C extension and a Python FastAPI proxy with fastapi, uvicorn, httpx, pydantic and mcp as dependencies. It gives three ways to run it: installing the extension and publishing the HTTP service, running the proxy locally via venv, and running it in Docker with .env.docker.example. It lists the project layout: build with the .cfe, src with the sources, and mcp_client_settings with example client configs.

README badge

Report a problem