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
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
- Reads 1C data only by default, but writes can be enabled via the ONEC_WRITABLE flag
- The 1C user password is passed via the MCP client's environment variables
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/onec-odata-mcpDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal
claude mcp add --transport stdio --env 'ONEC_BASE_URL=<ONEC_BASE_URL value>' --env 'ONEC_USERNAME=<ONEC_USERNAME value>' --env 'ONEC_PASSWORD=<your ONEC_PASSWORD>' onec-odata-mcp -- npx -y onec-odata-mcp@1.1.2Or add to the file .mcp.json, in the project
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"onec-odata-mcp","type":"stdio","command":"npx","args":["-y","onec-odata-mcp@1.1.2"],"env":{"ONEC_BASE_URL":"<ONEC_BASE_URL value>","ONEC_USERNAME":"<ONEC_USERNAME value>","ONEC_PASSWORD":"<your ONEC_PASSWORD>"}}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"onec-odata-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
codex mcp add onec-odata-mcp --env 'ONEC_BASE_URL=<ONEC_BASE_URL value>' --env 'ONEC_USERNAME=<ONEC_USERNAME value>' --env 'ONEC_PASSWORD=<your ONEC_PASSWORD>' -- npx -y onec-odata-mcp@1.1.2Or add to the file ~/.codex/config.toml, for all projects
[mcp_servers.onec-odata-mcp]
command = "npx"
args = ["-y", "onec-odata-mcp@1.1.2"]
env = { ONEC_BASE_URL = "<ONEC_BASE_URL value>", ONEC_USERNAME = "<ONEC_USERNAME value>", ONEC_PASSWORD = "<your ONEC_PASSWORD>" }If the file already exists, append the block to the end.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"onec-odata-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"onec-odata-mcp@1.1.2"
],
"environment": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"onec-odata-mcp": {
"command": "npx",
"args": [
"-y",
"onec-odata-mcp@1.1.2"
],
"env": {
"ONEC_BASE_URL": "<ONEC_BASE_URL value>",
"ONEC_USERNAME": "<ONEC_USERNAME value>",
"ONEC_PASSWORD": "<your ONEC_PASSWORD>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ONEC_BASE_URLrequired- 1C OData endpoint URL (e.g. https://host/db/odata/standard.odata)
ONEC_USERNAMErequired- Basic auth username for the OData endpoint
ONEC_PASSWORDsecret, required- Basic auth password for the OData endpoint
ONEC_DATABASEoptional- Optional database name hint
ONEC_METADATA_CACHE_TTL_MSoptional- Metadata cache TTL in milliseconds (default 3600000)
ONEC_CONFIG_PATHoptional- Optional path to JSON config file ({ baseUrl, username, password })
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Publish the standard OData interface in the 1C infobase, then run claude mcp add onec-odata -e ONEC_BASE_URL=https://1c.example.com/base/odata/standard.odata -e ONEC_USERNAME=user -e ONEC_PASSWORD=password -- npx -y onec-odata-mcp.
Other ways from the author
claude mcp add onec-odata -e ONEC_BASE_URL=https://1c.example.com/your_db/odata/standard.odata -e ONEC_USERNAME=odata_user -e ONEC_PASSWORD=your_password -- npx -y onec-odata-mcpThe command from the project README for adding the server in Claude Code.
This is third-party code. Review the repository files before installing.
What it does
The server connects to a 1C infobase's standard OData interface and turns natural-language questions into queries against catalogs and documents. It works with any configuration that has OData enabled: Accounting, ERP, Trade Management, or custom solutions. Access is read-only by default, with writes enabled explicitly via ONEC_WRITABLE. It caches metadata with a configurable TTL and supports an ONEC_DATABASE hint for the infobase name when there are several.
Who it is for. For 1C developers and analysts who want quick read access to 1C data from Claude without building a custom MCP server from scratch.
Good fit when
- The configuration already has the standard OData interface published
- You need fast structured access to catalogs and documents instead of Excel exports
- A ready npm package without building from source is enough
Not a fit when
- OData is not published in the infobase and cannot be published
- You need writes: the server reads only by default, and write mode is enabled separately and not tested for every scenario
Example request
Show all sales documents from last week over 100,000 rubles via 1C ODataLimitations
It needs 1C's standard OData interface published, plus a user login and password. The README notes a screenshot or video of the five-minute setup has not been added yet, and some examples are marked TODO. Writes are enabled with the ONEC_WRITABLE flag and need a careful check of the rights of the user the server runs as.
How to disable. Remove the server with claude mcp remove onec-odata, or delete the onec-odata entry from claude_desktop_config.json.
MCP
- Transport
- stdio
- Authentication
- not required
| Environment variables | |
|---|---|
| ONEC_BASE_URL required | URL of the published 1C OData interface. |
| ONEC_USERNAME required | 1C user login for OData. |
| ONEC_PASSWORD required, secret | 1C user password for OData. |
| ONEC_DATABASE | A hint for the infobase name when there are several. |
| ONEC_METADATA_CACHE_TTL_MS | Metadata cache TTL in milliseconds, one hour by default. |
| ONEC_WRITABLE | Enables writes to the infobase; the server is read-only by default. |
Security check
- Reads 1C data only by default, but writes can be enabled via the ONEC_WRITABLE flag
- The 1C user password is passed via the MCP client's environment variables
README in short
The README states its goal upfront: connect 1C to Claude in five minutes via standard OData instead of manual URLs and Excel exports. It gives two connection methods: the claude mcp add command and manual setup in claude_desktop_config.json, with required ONEC_BASE_URL, ONEC_USERNAME, ONEC_PASSWORD variables and optional ONEC_DATABASE, ONEC_METADATA_CACHE_TTL_MS, ONEC_WRITABLE.
FAQ
Do I need to install anything locally?
No, npx fetches the package on first run; building from source is needed only for development.
Can it write to the infobase?
Not by default, the server is read-only. Writes are enabled via the ONEC_WRITABLE variable.
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