OneC MCP
A Go MCP gateway between an agent and a 1C HTTP service: references, sales, stock, cash and settlement reporting across several databases
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
- Gives the agent access to financial and stock reports across several 1C databases
- Agent rights come from the OAuth key, so issue a separate key with a limited tool scope
Install
Manual install
go run ./cmd/serverRun inside a clone of the repository; copy configs/config.yml to configs/config.local.yml first.
This is third-party code. Review the repository files before installing.
What it does
The server acts as a gateway between an MCP client and 1C ERP through its HTTP service. The agent looks up customers, warehouses, products, cash desks and cost articles by free text with hierarchical group support, and builds sales, stock, cash and settlement reports with filters and grouping. One deployment can serve several 1C databases, each under its own slug with its own OAuth authorization server. Databases, their addresses and credentials are not kept in the config file but added and managed through the admin web panel without a restart.
Who it is for. For 1C developers and finance teams who need an agent's read access to reporting across several 1C databases through one gateway.
Good fit when
- You need agent read access to sales, stock and cash across several 1C databases
- You need a separate OAuth key per user with its own scope of tools
- You need to manage connected 1C databases through a web UI instead of a config file
Not a fit when
- You have a single database and want a simple connection without OAuth
- You need to write data into 1C, not just pull reports: the server is described as a reporting gateway
- You have no server of your own to run a Go application
Example request
Show today's stock balances at the Central warehouse and the top customers by sales this monthLimitations
It needs a 1C HTTP service to call directly and a server to run the Go 1.23+ build. A fresh install with no 1C databases added yet serves only /health and /admin. The project is young and maintained by a single author, MIT licensed.
How to disable. Stop the server process (or the deploy/onec-mcp.service systemd unit) and remove the server from your MCP client settings.
MCP
- Transport
- http
- Authentication
- OAuth
Security check
- Gives the agent access to financial and stock reports across several 1C databases
- Agent rights come from the OAuth key, so issue a separate key with a limited tool scope
README in short
The English README describes the Go service as a gateway between an LLM/MCP client and 1C ERP over HTTP. It lists reference search, sales, stock, cash and settlement reporting, per-user OAuth 2.0 keys, multiple 1C databases behind one gateway and an admin web panel. It shows a quick start: running the server, checking /health, adding a database via /admin and a first curl MCP request. A config table clarifies what lives in config.yml versus SQLite.
FAQ
Can one server handle several 1C databases?
Yes, each database gets its own slug in the /{slug}/mcp path and its own OAuth authorization server.
Where are 1C database addresses and passwords stored?
In SQLite, not the config file, managed through the /admin web panel behind Basic auth.
Related
A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review
Skills for real engineers by Matt Pocock
Skills For Real Engineers
Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture
GitHub toolkit for spec-driven development: the specify CLI adds agent commands and skills to a project, from principles to implementation
Reference MCP servers
Model Context Protocol servers
Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything