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

MCP server

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
All reasons and checks
Russian stack

pyrfor/onec-odata-mcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/onec-odata-mcp

Detects 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.2

Or 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.

Install in Cursor

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.

Install in VS Code

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.2

Or 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.

You will need: Node.js

Checked against the repository on Sep 25, 2026, commit 97a7f25.

Text for your agent

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-mcp

The 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 OData

Limitations

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
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.

Editors’ pick

A skills library that gives coding agents a development process: brainstorming, planning, TDD, subagents and code review

PluginMedium riskNo VPN needed292.5KRepository stars
Editors’ pick

Small composable skills for engineering with agents: plan grilling, TDD, bug diagnosis, code review and architecture

SkillLow risk271.4KRepository stars
Editors’ pick

GitHub toolkit for spec-driven development: the specify CLI adds agent commands and skills to a project, from principles to implementation

CLIMedium riskNo VPN needed139.3KRepository stars

Reference MCP servers

Model Context Protocol servers

Official

Official reference MCP servers: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time and Everything

MCP serverMedium risk90.6KRepository stars
Foxx AI1C over OData: read-only MCP server

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.