
1C OData MCP
io.github.alexgrebeshok-coder由 GitHub 账号 alexgrebeshok-coder 发布v1.0.1更新于 Oct 28, 2026
Read-only MCP server for 1C:Enterprise via OData with metadata and query builder tools.
概览
只读的 MCP 服务器,让助手通过标准 OData 接口浏览和查询 1C:Enterprise 数据库。
- 可以做什么
- 检查连接状态与配置
- 列出可用的 OData 实体,并查看元数据、字段、类型、主键与关联
- 根据结构化输入构建并校验 OData 的 filter、select 与 orderby 参数
- 查询实体并统计记录数量,可带过滤条件
- 通过写入工具创建、修改或删除实体,默认先预览
- 汇总账户、销售、往来单位等典型财务实体
- 适用场景
- 适用于已发布 OData 接口的 1C:Enterprise 系统(会计、ERP、贸易管理或自研配置),希望用自然语言提问而不必导出表格或手写 OData 地址时使用。
- 运行要求
- 通过 npx 在本机运行,需要 Node.js 18 或更高版本。需要已发布 OData 接口的 1C:Enterprise 数据库,以及 ONEC_BASE_URL、ONEC_USERNAME、ONEC_PASSWORD(或由 ONEC_CONFIG_PATH 指定的 JSON 配置文件)。可选:ONEC_DATABASE、ONEC_METADATA_CACHE_TTL_MS、ONEC_WRITABLE。
安装
在 SourceWeft 中
- 打开 控制台中的 1C OData MCP,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
onec-odata-mcp
[npm] [MCP Registry] [License: MIT]
Подключи 1С к Claude за 5 минут
Даёт Claude (Desktop, Code, любой MCP-клиент) доступ на чтение к базе 1С:Предприятие через стандартный OData. Вместо выгрузки в Excel или ручного написания OData-урлов — спрашиваешь по-русски, получаешь структурированные данные из справочников и документов.
Работает с любой конфигурацией 1С, где опубликован OData (Бухгалтерия, ERP, Управление торговлей, самописные конфигурации).
📸 TODO: скриншот/видео 5-минутной настройки — добавить после первого прогона с реальной базой.
Шаг 1 — установка
Ничего ставить локально не нужно, npx подтянет пакет при первом запуске:
One-liner (after npm publish):
Set ONEC_BASE_URL, ONEC_USERNAME, and ONEC_PASSWORD in your MCP client config (see below).
From source:
(Для разработки из исходников: npm install && npm run build.)
Шаг 2 — подключи к Claude
Вариант А — командой claude mcp add (Claude Code):
Вариант Б — вручную в claude_desktop_config.json (Claude Desktop: Settings → Developer → Edit Config):
Готовый сниппет лежит в examples/claude_desktop_config.json.
Опционально: ONEC_DATABASE (подсказка имени базы), ONEC_METADATA_CACHE_TTL_MS (TTL кэша метаданных, по умолчанию 1 час), ONEC_WRITABLE=true (разрешить реальную запись через odata_write; по умолчанию false). Либо вместо переменных окружения — JSON-файл ~/.onec-odata/onec-config.json с полями baseUrl, username, password (и опционально "writable": true), путь к которому задаётся через ONEC_CONFIG_PATH.
Шаг 3 — первый запрос
Перезапусти Claude и спроси:
«Какие справочники и документы есть в базе 1С?»
Claude вызовет odata_list_entities, увидит список и дальше сам подберёт нужные инструменты под конкретный вопрос — без знания синтаксиса OData с твоей стороны.
Больше готовых промптов — в examples/prompts.md.
Инструменты
Обычно агент сам комбинирует odata_build_query → odata_query/odata_count, тебе достаточно спросить своими словами.
Безопасность
- По умолчанию только чтение. Флаг
writableв конфиге базы (envONEC_WRITABLE=true/"writable": trueв~/.onec-odata/onec-config.json) по умолчанию false. Без него реальныеPOST/PATCH/DELETEне уходят в 1С. - Запись — только через
odata_write. У инструментаdryRunпо умолчанию true: всегда сначала превью{dryRun: true, wouldExecute: …}без сетевого вызова. Реальная запись требует иwritable: trueна этой базе, и явногоdryRun: false. - Пароль передаётся Basic Auth (base64 в заголовке каждого запроса — как требует OData) и хранится либо в env-переменных конфига твоего MCP-клиента (рекомендуется), либо в локальном файле
~/.onec-odata/onec-config.json. Сервер не логирует и не возвращает пароль в ответах инструментов. - Поля-секреты (
password,token,apikey,secretи т.п. в названиях) автоматически исключены из подсказок «возможно, вы имели в виду» (src/query/fuzzy.ts), чтобы агент не подсвечивал их случайно. - Рекомендация: заведи в 1С отдельного OData-пользователя с ролью только на чтение для обычной работы; writable-учётку и
ONEC_WRITABLE=trueвключай только осознанно.
Требования
- Node.js ≥ 18
- 1С:Предприятие с опубликованным OData-интерфейсом (веб-публикация →
standard.odata)
Разработка
Детали и правила вклада — в CONTRIBUTING.md.
License
MIT
English (short)
MCP server giving Claude (or any MCP client) access to a 1C:Enterprise database via its standard OData endpoint. Read-only by default (writable: false); writes go through odata_write and always dry-run first unless you explicitly enable writable: true and pass dryRun: false. No spreadsheet exports, no hand-written OData URLs — ask in natural language, get structured data from catalogs and documents.
Configure via ONEC_BASE_URL / ONEC_USERNAME / ONEC_PASSWORD env vars (see the Russian quick-start above for claude mcp add and claude_desktop_config.json snippets — the JSON is language-agnostic). Optional: ONEC_WRITABLE=true to allow real writes. Published on npm as onec-odata-mcp and listed in the official MCP Registry as io.github.alexgrebeshok-coder/onec-odata-mcp.
来源:README.md,提交 97a7f25
工具
0版本历史
1- v1.0.1最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分