Infaton Mcp35 について
INFATON MCP Server は 1С:Предприятие 側で動作し、AI アシスタントに 1С データベース操作用のツールを提供します。JSON-RPC 2.0 でメタデータ、業務データ、管理、ドキュメント操作を公開し、MCP クライアント向けの Node.js stdio ラッパーも備えています。
主な機能
- 01JSON-RPC 2.0 による MCP インターフェース
- 02メタデータと業務データの読み取り
- 031С オブジェクトとドキュメントの作成・変更
- 04レポート、監査、管理ツール
- 05クライアント向け Node.js stdio ラッパー
活用シーン
- 011С:ERP の業務データの照会
- 02ドキュメント状態、残高、仕訳の確認
- 03AI エージェントによる 1С 操作とレポート実行
- 04MCP クライアントからの 1С データベース接続
MCP 対応
サーバーは 1С:Предприятие 側で動作し、データベース操作用ツールを MCP クライアントに公開します。Node.js stdio ラッパーは Claude Desktop や Cursor などのクライアントに接続できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
http://localhost:8085/mcpclaude mcp add --transport http MCP35 http://localhost:8085/mcp{"mcpServers":{"MCP35":{"type":"http","url":"http://localhost:8085/mcp"}}}Cursor で開く{"servers":{"MCP35":{"type":"http","url":"http://localhost:8085/mcp"}}}VS Code で開く{"mcpServers":{"MCP35":{"type":"http","url":"http://localhost:8085/mcp"}}}{"mcpServers":{"MCP35":{"serverUrl":"http://localhost:8085/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
INFATON MCP Server для 1С:Предприятие
Model Context Protocol (MCP) — сервер на стороне 1С:Предприятие, предоставляющий 94 инструмента для взаимодействия AI-ассистентов с базой данных 1С.
Протокол: JSON-RPC 2.0 (спецификация MCP)
Часть платформы INFATON — цифровые двойники и AI-агенты над 1С:ERP. Компания: infaton.ru · Продукт: chatmcp.ru (ChatMCP — чат-двойник над вашей 1С:ERP).
🏗 Кто использует
INFATON MCP Server — движок доступа AI к 1С в продуктах платформы INFATON:
- eventcode.ru — платформа заказной разработки: AI-агенты ведут проекты и работают с 1С:ERP заказчика через этот MCP-сервер.
- chatmcp.ru — ChatMCP, цифровой двойник над 1С:ERP: чат-интерфейс и рабочие места (АРМ) поверх этого MCP-сервера.
Сервер открыт (MIT) — используйте в своём продукте, см. Быстрый старт.
Правообладатель отдельного MCP-моста — Привалов Сергей Юрьевич. Мост распространяется по MIT; лицензия моста не предоставляет прав на самостоятельную программу INFATON Chat.
📋 Состав репозитория
| Файл | Описание |
|---|---|
Module.bsl | Модуль HTTP-сервиса MCP — основной код, 94 инструмента (7 574 строки) |
index.mjs | Node.js stdio-обёртка для MCP-клиентов (Claude Desktop, Cursor и др.) |
package.json | npm-манифест для публикации и запуска через npx |
glama.json | Манифест для каталога Glama.ai |
| сборка .cfe | Соберите расширение из Module.bsl (v6.2.8) — см. HOW_TO_BUILD_CFE.md |
HOW_TO_BUILD_CFE.md | Инструкция по сборке и установке .cfe |
EXAMPLES.md | Примеры агентских сценариев (7 кейсов) |
CHANGELOG.md | История версий |
🆕 Что нового в v6.2.8
- Строка преобразуется в дату только для реквизита с единственным типом
Дата; для составного типа сохраняется исходная строка. Некорректная или пустая дата вызывает явную ошибку до попытки присвоения.
Возможности, сохранённые из v6.2.5
check_object_fill: проверка будущего объекта в памяти, без вызова записи самим инструментом; результатis_complete,missing,missing_fields.type_namesв описании реквизитов: технические имена ссылочных типов вместо догадок по синонимам.- Сообщения 1С при проверке заполнения и ошибке создания передаются клиенту, если конфигурация их предоставляет.
- Подключённая stdio-обёртка получает каталог через
tools/listустановленной 1С, поэтому новые инструменты больше не скрываются старым списком из 51. ФильтрONEC_ALLOWED_TOOLSприменяется к каталогу и вызовам.
Поставка 6.2.8 — исходный код. Сборка и проверка расширения в вашей конфигурации выполняются по инструкции. Готовый бинарный .cfe с неподтверждённым соответствием исходнику не прикладывается. Проверки Node-обёртки не заменяют компиляцию и приёмку в 1С. Без ONEC_URL доступен только старый демонстрационный каталог из 51 инструмента; это не список установленного сервера.
Изменения предыдущей v6.2.1
- Безопасная запись составных ссылок по GUID (6.2.1): объект проверяется в каждом разрешённом типе, несуществующий GUID отклоняется.
fill_counterparty_by_inn(6.2.0): реквизиты контрагента по ИНН штатным 1С:Контрагент (чтение, без записи).get_config_fingerprint(6.1.0): дешёвый отпечаток состава конфигурации.
🆕 Что нового в v6.0.2
59 → 91 инструмент (+32): отчёты СКД под типовые конфигурации 1С:ERP (run_report, get_report_options…), аудит прав (get_rights_for_user, export_role_matrix), пользовательские настройки (set_constant, set_functional_option, set_user_setting…), снимки и сравнение (snapshot_document_state, compare_snapshots, document_chain), бизнес-данные ЕРП (get_stock_by_warehouse, get_unfulfilled_order_lines, get_reservation_status). Плюс запись ссылочных полей и перечислений (резолв _guid для шапки И строк табличных частей). Полный перечень — в CHANGELOG.md.
🆕 Что нового в v2.1.0
Исправления (9 патчей)
| # | Инструмент | Баг | Исправление |
|---|---|---|---|
| P1 | get_list | Отсутствие ПЕРВЫЕ N — возвращал ВСЕ записи | Добавлен ПЕРВЫЕ с параметром limit (по умолчанию 100) |
| P2 | get_document_list | Фильтр по дате — Дата >= без параметра | Добавлен Запрос.УстановитьПараметр для дат |
| P3 | get_object_by_ref | Пустая ссылка → невнятная ошибка платформы | Добавлена проверка Если НЕ ЗначениеЗаполнено(Ссылка) |
| P4 | get_active_users / get_locks | Прямой обход коллекции сеансов → ошибка на сервере | Переход на МассивСеансов = ПолучитьСеансыИнформационнойБазы() |
| P5 | get_event_log | Дата передавалась строкой + поле «Метаданные» вместо представления | ПреобразоватьДату() + .МетаданныеПредставление |
| P6 | ПреобразоватьДату | Не обрабатывал 2026-05-14, 14.05.2026, 20260514 | Полная перезапись: ISO 8601 + 3 формата |
| P7 | fill_on_basis | Объект.Заполнить() → верный метод ЗаполнитьНаОсновании() | Исправлен вызов метода |
| P8 | execute_batch | Вложенный execute_batch → бесконечная рекурсия | Добавлен guard-флаг _batch_depth |
| P9 | — | Версия оставалась 2.0.0 | Обновлена до 2.1.0 |
Новые инструменты (10 штук, группа З)
| # | Инструмент | Назначение |
|---|---|---|
| 42 | get_balance | Остатки и обороты регистра бухгалтерии (любой план счетов) |
| 43 | get_register_totals | Итоги регистров накопления (остатки/обороты) |
| 44 | get_accounting_entries | Бухгалтерские проводки документа (Дт, Кт, сумма) |
| 45 | get_related_documents | Цепочка связанных документов (ввод на основании) |
| 46 | validate_document | Проверка заполнения документа без проведения |
| 47 | get_form_structure | Структура управляемой формы (реквизиты, команды) |
| 48 | get_rights | Права доступа текущего пользователя к объекту |
| 49 | find_duplicates | Поиск дублей в справочниках по реквизитам |
| 50 | get_print_form | Печатные формы через подсистему УправлениеПечатью |
| 51 | get_configuration_extensions | Список расширений конфигурации (CFE) |
🛠 Каталог инструментов
Ниже — базовый каталог (51 инструмент, группы А–З). В v6.0.2 добавлены ещё 32 (отчёты/СКД, права, пользовательские настройки, снимки, бизнес-данные 1С:ERP) — актуальные 94 регистрации находятся в
Module.bsl; изменения — в CHANGELOG.md. Для точного каталога и схем запрашивайтеtools/listустановленного сервера.
Группа А — Метаданные (8)
| # | Инструмент | Описание |
|---|---|---|
| 1 | get_metadata_tree | Дерево объектов метаданных конфигурации |
| 2 | get_object_metadata | Полная структура объекта (реквизиты, ТЧ, модули) |
| 3 | get_object_attributes | Список реквизитов объекта |
| 4 | get_object_tabular_sections | Табличные части объекта |
| 5 | get_enum_values | Значения перечисления |
| 6 | get_register_dimensions | Измерения, ресурсы и реквизиты регистра |
| 7 | get_document_movements | Движения документа по регистрам |
| 8 | search_metadata | Поиск по метаданным (по имени/синониму) |
Группа Б — Чтение данных (7)
| # | Инструмент | Описание |
|---|---|---|
| 9 | execute_query | Выполнение произвольного запроса 1С |
| 10 | get_object_by_ref | Получение объекта по ссылке/GUID |
| 11 | get_list | Список элементов справочника/документа с фильтрами |
| 12 | find_by_code | Поиск элемента по коду |
| 13 | find_by_name | Поиск элемента по наименованию |
| 14 | get_register_records | Записи регистра с фильтрами |
| 15 | get_document_list | Список документов с фильтрами по дате/номеру |
Группа В — CRUD (7)
| # | Инструмент | Описание |
|---|---|---|
| 16 | create_object | Создание нового объекта (справочник/документ) |
| 17 | update_object | Изменение реквизитов объекта |
| 18 | delete_object | Пометка на удаление |
| 19 | post_document | Проведение документа |
| 20 | unpost_document | Отмена проведения |
| 21 | copy_object | Копирование объекта |
| 22 | set_attribute | Изменение отдельного реквизита |
Группа Г — Код и отчёты (4)
| # | Инструмент | Описание |
|---|---|---|
| 23 | execute_code | Выполнение произвольного кода на встроенном языке |
| 24 | evaluate_expression | Вычисление выражения и возврат результата |
| 25 | get_module_text | Получение текста модуля объекта |
| 26 | generate_report | Формирование отчёта (СКД) |
Группа Д — Администрирование (6)
| # | Инструмент | Описание |
|---|---|---|
| 27 | get_active_users | Список активных пользователей и сеансов |
| 28 | get_event_log | Журнал регистрации с фильтрами |
| 29 | get_locks | Текущие блокировки данных |
| 30 | get_server_info | Информация о платформе, конфигурации, сервере |
| 31 | check_references | Проверка ссылочной целостности |
| 32 | run_scheduled_job | Запуск регламентного задания |
Группа Е — Интеграция (3)
| # | Инструмент | Описание |
|---|---|---|
| 33 | exchange_execute | Выполнение обмена данными |
| 34 | get_exchange_log | Журнал обмена |
| 35 | import_data | Импорт данных из JSON |
Группа Ж — Расширенные операции v2.0 (6)
| # | Инструмент | Описание |
|---|---|---|
| 36 | fill_on_basis | Заполнение документа на основании другого |
| 37 | write_register_records | Запись набора записей регистра |
| 38 | update_tabular_section | Обновление табличной части объекта |
| 39 | subscribe_events | Подписка на события журнала |
| 40 | execute_batch | Пакетное выполнение инструментов |
| 41 | get_changes_since | Получение изменений с метки времени (CDC) |
Группа З — Бухгалтерия, аудит, формы v2.1 (10) 🆕
| # | Инструмент | Описание |
|---|---|---|
| 42 | get_balance | Остатки/обороты регистра бухгалтерии |
| 43 | get_register_totals | Итоги регистров накопления |
| 44 | get_accounting_entries | Проводки документа (Дт/Кт/Сумма) |
| 45 | get_related_documents | Связанные документы (цепочка оснований) |
| 46 | validate_document | Проверка заполнения без проведения |
| 47 | get_form_structure | Структура управляемой формы |
| 48 | get_rights | Права доступа текущего пользователя |
| 49 | find_duplicates | Поиск дублей по реквизитам |
| 50 | get_print_form | Печатные формы через УправлениеПечатью |
| 51 | get_configuration_extensions | Список расширений конфигурации (CFE) |
🚀 Быстрый старт
Вариант 1: Через Claude Desktop / Cursor (stdio)
Способ А — через npx (версия npm проверяется отдельно)
Публикация исходного релиза 6.2.8 не обновляет пакет npm автоматически. Для этой версии используйте способ Б: клонирование тега v6.2.8.
{
"mcpServers": {
"1c-erp": {
"command": "npx",
"args": ["infaton-mcp"],
"env": {
"ONEC_URL": "https://your-server/base/hs/mcp/",
"ONEC_USER": "Username",
"ONEC_PASSWORD": "Password"
}
}
}
}
Способ Б — из клонированного репозитория
git clone --branch v6.2.8 https://github.com/infaton/MCP35.git
cd MCP35
npm test
{
"mcpServers": {
"1c-erp": {
"command": "node",
"args": ["/path/to/MCP35/index.mjs"],
"env": {
"ONEC_URL": "https://your-server/base/hs/mcp/",
"ONEC_USER": "Username",
"ONEC_PASSWORD": "Password"
}
}
}
}
Вариант 2: Прямой HTTP-вызов
1. Установите расширение
- Откройте Конфигуратор базы 1С
- Конфигурация → Расширения конфигурации → Добавить
- Выберите расширение, собранное из
Module.bslверсии 6.2.8 по инструкции - Обновите конфигурацию БД (F7)
2. 接続を確認します
curl -u 'Логин:Пароль' -X POST \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"initialize","id":1}' \
https://ваш-сервер/база/hs/mcp/
期待される応答:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"protocolVersion": "2024-11-05",
"capabilities": { "tools": {} },
"serverInfo": { "name": "infaton-1c-mcp", "version": "6.2.8" }
}
}
3. ツールを呼び出します
curl -u 'Логин:Пароль' -X POST \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","method":"tools/call","id":2,"params":{"name":"get_balance","arguments":{"account_code":"41.01","period_from":"2026-01-01T00:00:00","period_to":"2026-03-31T23:59:59"}}}' \
https://ваш-сервер/база/hs/mcp/
📐 アーキテクチャ
┌─────────────────────────┐
│ AI Assistant │ Claude / GPT / Qwen / Gemini / ...
│ (MCP Client) │
└────────┬────────────────┘
│ stdio (JSON-RPC 2.0)
▼
┌─────────────────────────┐
│ index.mjs │ Node.js stdio → HTTP proxy
│ (MCP Transport) │
└────────┬────────────────┘
│ HTTP POST (Basic Auth)
▼
┌─────────────────────────┐
│ HTTP-сервис /hs/mcp/ │ Расширение INFATON_MCP.cfe
│ Module.bsl │ 94 инструмента (7 574 строки)
│ (MCP Server) │
└────────┬────────────────┘
│ Встроенный язык 1С
▼
┌─────────────────────────┐
│ База 1С:Предприятие │ ERP / УПП / Бухгалтерия / УТ / КА
│ Данные, метаданные │
└─────────────────────────┘
📝 互換性
| パラメーター | 値 |
|---|---|
| 1С プラットフォーム | 8.3.20+(8.3.27.1989でテスト済み) |
| 構成 | ERP 2.5、УПП 1.3、Бухгалтерия 3.0、УТ 11、КА 2 |
| MCP プロトコル | 2024-11-05 |
| トランスポート | HTTP(Basic Auth)、stdio(index.mjs経由) |
| Node.js | 18+(stdioラッパー用) |
📊 バージョン履歴
| バージョン | 日付 | ツール数 | 変更内容 |
|---|---|---|---|
| v6.2.8 | 2026-10-16(ソースコード公開) | 94 | 一意な型 Дата に対する型付きの日付変換 |
| v6.2.5 | 2026-10-04(公開) | 94 | 入力値チェック、技術型、1Сメッセージ、最新のstdioディレクトリ |
| v6.2.1 | 2026-09-09 | 93 | GUIDによる複合参照の検証 |
| v2.1.0 | 2026-05-14 | 51 | ツールを10個追加(会計、監査、フォーム)、バグ修正9件 |
| v2.0.0 | 2026-05-08 | 41 | ツールを6個追加(batch、CDC、fill_on_basisなど) |
| v1.0.0 | 2026-04-28 | 35 | 初の公開リリース |
🔒 セキュリティ
本番環境で必須
| 要件 | 重要な理由 |
|---|---|
| HTTPS | Basic Authはログイン名とパスワードをbase64で送信します。HTTPではネットワーク上の誰もが内容を確認できます |
| 専用の1Сユーザー | 最小限の権限(必要なオブジェクトのみ)を持つユーザー mcp_agent を作成してください |
ONEC_ALLOWED_TOOLS | 特定のシナリオで使用するツールを制限してください |
危険なツール
次のツールは明示的な許可が必要で、慎重に使用してください。
| ツール | リスク | 推奨事項 |
|---|---|---|
execute_code | 特権モードで任意のBSLコードを実行します | 不要な場合は ONEC_ALLOWED_TOOLS で禁止してください |
delete_object | オブジェクトに削除マークを付けます | 分析シナリオでは禁止してください |
run_scheduled_job | スケジュール済みジョブを実行します | 不要な場合は禁止してください |
import_data | オブジェクトを一括で作成・変更します | 読み取り専用シナリオでは禁止してください |
post_document / unpost_document | ドキュメントの転記状態とレジスターの動きを変更します | 業務運用シナリオでのみ使用してください |
読み取り専用構成
ONEC_ALLOWED_TOOLS="get_metadata_tree,execute_query,get_object_by_ref,get_list,find_by_code,find_by_name,get_register_records,get_document_list,get_server_info,get_event_log,get_balance,get_register_totals,get_accounting_entries,get_related_documents,get_form_structure,get_rights,find_duplicates"
詳しくは、EXAMPLES.mdを参照してください。
📄 ライセンス
MIT © 2024-2026 INFATON — Привалов С.Ю.
プラットフォーム:infaton.ru · 製品:chatmcp.ru(ChatMCP)。
.cfe のビルド手順について詳しくは、HOW_TO_BUILD_CFE.mdを参照してください。
エージェントシナリオの例については、EXAMPLES.mdを参照してください。
変更履歴については、CHANGELOG.mdを参照してください。
📰 Инфостартでの公開
Инфостартポータルの記事:INFATON MCP Server v2.1 — 1С:ПредприятиеとのAI連携のための51個のツール
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。