1C OData MCP with a JSON cache
MCP сервер для работы с OData 1C
A Python MCP server over 1C OData: reads and changes catalogs and documents, saving everything to JSON files for local analysis without repeat queries
- 4 ★ on the repository
- Last commit
Broad access
Why this level
- The create_1c_entity, update_1c_entity and delete_1c_document tools directly create, change and delete documents and catalog items in 1C
- Basic Auth credentials are stored in plain text in .env, and exports are saved to disk locally
Install
- Works in
- Services
Manual install
uv syncInstall dependencies.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- The create_1c_entity, update_1c_entity and delete_1c_document tools directly create, change and delete documents and catalog items in 1C
- Basic Auth credentials are stored in plain text in .env, and exports are saved to disk locally
This is third-party code. Review the repository files before installing.
What it does
The server connects to 1C's OData API with Basic Auth and gives an agent tools for reading metadata and data with automatic saves to JSON files, plus CRUD operations: creating and updating entities, deleting documents, and a separate builder for goods-and-services documents with business rules. The core architectural idea is that data-fetching functions return only a status while the export itself stays in a file: filter_local_data, get_file_structure and count_local_data then work against that file locally, without repeat calls to 1C, saving model context. It includes smart file lookup by partial name and cache management for both metadata and data.
Who it is for. For 1C developers and analysts who want an agent that reads and changes 1C data over OData, with exports preserved between sessions.
Good fit when
- You need to export and locally analyze a large volume of 1C data without repeat server queries
- You need CRUD operations on catalogs and documents over OData from an agent
- You need to create goods-and-services documents based on other documents, respecting business rules
Not a fit when
- The database's OData interface is not published, or publishing it is unsafe for the environment
- You need operation without saving data to disk: the server's whole architecture is built on local JSON-file caching
- You need authentication stronger than Basic Auth: the README doesn't describe other methods
Example request
Export the Products catalog, show the resulting file's structure, and sort the first 10 items by priceMCP
- Transport
- sse
- Authentication
- API key
Environment variables
ODATA_BASE_URLrequired- Address of the 1C database's OData API.
ODATA_USERNAMErequired- Username for Basic Auth to 1C.
ODATA_PASSWORDrequired, secret- Password for Basic Auth to 1C.
Limitations
Authentication to 1C is Basic Auth only, with the login and password stored in plain text in .env. All exported data is saved to JSON files on disk, including potentially personal data from catalogs and documents, so access to the cache directory needs to be restricted separately. The create_1c_document and update_1c_document functions are marked deprecated in favor of create_1c_entity and update_1c_entity. Python 3.12 or newer and a configured 1C OData API are required.
How to disable. Stop the uv run main.py process and remove the server from your MCP client configuration; cache files can be deleted manually from the working directory.
FAQ
Is data fetched from 1C fresh every time?
No, fetch_1c_data saves the export to a JSON file once, and further analysis via filter_local_data and count_local_data works against that file locally.
Can a document be deleted through this server?
Yes, the delete_1c_document tool removes a document from 1C, which is a write operation, so access to the server should be restricted.
Discussion
No questions or reviews yet.
Related
All 1C:Enterprise tools1C OData MCP server
1C OData MCP Server
A small Python MCP server that wraps standard 1C Управление предприятием OData read operations into three tools
MCP server for 1C:Enterprise data over OData: receivables, sales, stock and cash, plus document creation and posting behind a separate flag
MCP server for 1C:Enterprise databases over standard OData: catalogs, documents, registers and accounting with no configuration extension
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 over OData: read-only MCP server
onec-odata-mcp
An npx MCP server that gives Claude read access to a 1C database via standard OData, no Excel exports or hand-built URLs
A PyPI-published read-only MCP server for standard 1C:Enterprise OData 8.3.5+: schema, filtered queries, record lookup by Ref_Key
Alternatives
Tools by other authors for the same tasks.
README in short
The README lists the server's features: metadata, data queries, local filtering, CRUD operations, special goods-and-services documents, Basic Auth authentication, and a JSON architecture with a rationale for saving LLM context. It gives a quick start via uv sync and .env, an SSE connection example, a full tool list by group, code examples for creating and updating entities, a description of smart partial-name file lookup, and a link to architecture.md for details.