Инструменты по категориям
1C OData MCP работает непосредственно со стандартным OData 1С. В отличие от серверов с произвольным языком запросов или BSL execution, он использует опубликованные entity sets, $metadata, GET/POST/PATCH и bound actions. Generic-инструменты подходят любой опубликованной OData-модели, а готовая бухгалтерская аналитика и большинство write-сценариев привязаны к именам объектов русской БП 3.0.
Инструменты чтения и аналитики
- Базы, организации и OData-модель:
list_databases,health_check,list_organizations,get_organization_card,list_entities,describe_entity. - Контрагенты и документы:
find_counterparty,get_counterparty,search_documents,get_document. - Остатки и обороты:
get_debtors,get_inventory,get_sales,get_cashflow. - Детальная аналитика:
get_sales_breakdown,get_purchases_breakdown,get_payments_breakdown,get_taxes_paid,get_deal_history,get_customer_history,get_supplier_history.
Инструменты записи
- Справочники:
create_counterparty,create_bank_account,create_contact_person,create_nomenclature,create_contract,create_folder,move_to_folder,update_counterparty,update_nomenclature,update_entity. - Продажи и закупки:
create_invoice,create_supplier_invoice,create_purchase,create_shipment,create_return_from_customer,create_return_to_supplier. - Склад:
create_transfer,create_surplus,create_writeoff,create_inventory. - Услуги, деньги и счета-фактуры:
create_act,create_services_act,create_payment,create_payout_order,create_bank_writeoff,create_cash_receipt,create_cash_payment,create_issued_invoice,create_received_invoice. - Изменение документов:
update_document_lines,add_document_line,remove_document_line,post_document,mark_for_deletion.
Сильные стороны
не требует расширения, COM или доступа к SQL; один stdio-процесс обслуживает несколько OData endpoints. Запись по умолчанию закрыта двумя конфигурационными флагами, а каждый tool сначала формирует preview и требует confirm=true. Жесткого удаления нет; POST/PATCH не повторяются автоматически. $metadata позволяет показать реальные опубликованные сущности и поля.
Ограничения
write-tools видны агенту даже в read-only режиме; сервер не имеет собственного approval UI и технически полагается на то, что клиент/пользователь не передаст confirm=true без согласия. Учетные данные всех баз находятся в env одного процесса, нет OAuth и per-tool scopes. Аналитика агрегирует OData-строки на стороне Node.js и при высоком лимите может передавать/держать сотни тысяч строк. Универсальность «для любой 1С» относится прежде всего к просмотру $metadata и generic документам; бухгалтерские отчеты и CRUD ожидают структуру БП 3.0.
Когда выбирать
когда OData уже опубликован и нужен локальный MCP без установки расширения, с широкой БП 3.0 аналитикой и опциональной контролируемой записью. Для гарантированно read-only использования следует оставить оба write-флага выключенными и дополнительно выдать OData-пользователю права только на чтение.
Что учитывать
npx -y 1c-odata-mcp или Node.js из собранных исходников и обращается к стандартному OData endpoint 1С по HTTP(S) с Basic Authentication.tools/list: фактический POST/PATCH блокируется в HTTP-клиенте, пока одновременно не установлены глобальный READ_ONLY=false и ODATA_DB_<ИМЯ>_WRITABLE=true для выбранной базы. Каждый изменяющий tool дополнительно выполняет только preview при confirm=false и пишет при confirm=true; dry-run может делать читающие запросы для разрешения ссылок, но не отправляет изменение. Создание выполняется POST, изменение и строки документов — PATCH, проведение/отмена проведения — bound actions; жесткого DELETE нет, mark_for_deletion меняет DeletionMark. Аннотации MCP помечают post_document и mark_for_deletion destructive, остальные write-tools — не destructive, хотя они создают или изменяют бизнес-данные. Повторные попытки разрешены только для запросов без body; POST/PATCH не retry-ятся. Чтение ограничивается ODATA_MAX_ROWS до 100000 строк, клиентские аналитические агрегации — ODATA_ANALYTICS_MAX_ROWS до 1000000; значения по умолчанию 1000 и 200000 соответственно, поэтому крупные отчеты могут быть тяжелыми для сети и памяти. Несколько баз поддерживаются именованными env-профилями, но все credentials находятся в окружении одного локального процесса; собственного approval UI, OAuth или per-tool ACL нет, безопасность опирается на env-флаги, права пользователя 1С и состав OData. list_entities/describe_entity читают только опубликованный $metadata, а не полную конфигурацию.