1c-fresh-mcp
An MCP server for 1C-Fresh over standard OData: invoices, sales, counterparties, working around known 1C-Fresh OData quirks and the 22 percent VAT
High risk
We rate an entry high when the tool writes to external systems, handles money, production databases or secrets, or runs arbitrary commands. The CLI installs it only with your consent.
Why this level
- create_invoice and post_document create and post real documents in 1C-Fresh
- mark_for_deletion flags objects and documents for deletion
Install
Manual install
git clone https://github.com/XRAT-dev/1c-fresh-mcp.git && cd 1c-fresh-mcp && cp .env.example .env && bash install.shClone, fill in .env, and install dependencies with a connectivity check.
This is third-party code. Review the repository files before installing.
What it does
The server talks to the standard OData interface of the 1C-Fresh cloud service and gives the agent tools for catalogs (counterparties, products and services, organizations, bank payments) and documents (invoices and sales: create, read with the tabular section, post, unpost, mark for deletion). It works around 1C-Fresh-specific OData quirks: an INN filter that normally returns HTTP 500 is worked around with client-side filtering, an invoice's tabular section is sent inside the document body instead of a separate PATCH, and a counterparty's address is set with the right Вид_Key so it reaches the printable form. It ships a separate PDF invoice generator with an optional brand banner and automatic pagination for long tables.
Who it is for. For small business owners and bookkeepers on 1C-Fresh who need to issue invoices and track sales through an agent.
Good fit when
- You need to quickly issue an invoice and get a ready PDF
- You need to find a counterparty by INN without manually working around the OData error
- You need to post or unpost a sales document
Not a fit when
- You need standard desktop 1C, not the cloud 1C-Fresh service
- You need low-level arbitrary OData calls beyond the ready odata_get, odata_post and odata_patch tools
Example request
Find the counterparty by INN 1234567890 and issue them an invoice for an ABB breaker at 3903.70 rublesLimitations
Built only for 1C-Fresh's standard OData interface, with the oldest supported publication being 8.3.5 in Atom format. Needs Python 3.10+ and a user with OData access. The PDF banner and bank details are set via environment variables and are empty by default.
How to disable. Remove the 1c-fresh server from your MCP client configuration.
MCP
- Transport
- stdio
- Authentication
- not required
| Environment variables | |
|---|---|
| FRESH_BASE_URL required | 1C-Fresh publication URL without a trailing slash. |
| FRESH_PASSWORD required, secret | Password of the OData user. |
| FRESH_USERNAME | OData user, defaults to odata.user. |
Security check
- create_invoice and post_document create and post real documents in 1C-Fresh
- mark_for_deletion flags objects and documents for deletion
README in short
The bilingual README lists groups of MCP tools from a health check to low-level odata_get/post/patch, a table of known 1C-Fresh OData quirks with their workarounds, environment variables for connection and PDF generation, an example of using the Python connector directly, and a section on generating the invoice PDF in email and print variants.
FAQ
Why is the INN filter done client-side?
Because the standard $filter on INN in 1C-Fresh returns HTTP 500; the get_counterparty_by_inn tool fetches the list and filters itself.
How is the 22 percent VAT handled?
The server was built accounting for the 22 percent VAT rate in force since 2025, as noted in the project's own description.
Related
A set of investment research skills for Claude Code and Codex built on four investors' methodologies. It is a research tool, not investment advice
Stripe's official MCP server, plugins and skills: the agent searches the API and docs, reads and changes account data
Alpaca's official MCP server: orders for stocks, ETFs, crypto and options, position management and market data in plain language
inn-check-ru: counterparty risk traffic light
inn-check-ru
An open-source skill that checks a Russian company by tax ID across EGRUL, bailiffs, courts, bankruptcy and sanctions, and returns a dated risk verdict