Skip to main content
Glama
1c-odata-mcp

1c-odata-mcp

by foxnaim

Зарегистрировать счёт от поставщика

write.purchase.create_supplier_invoice

Creates a supplier invoice document in 1C to register an incoming bill for payment, covering goods and services, with dry-run preview and confirmation before writing; no postings are made.

Instructions

Создаёт документ «Счёт на оплату поставщика» — регистрирует входящий счёт-основание для оплаты (подходит для предоплаты, когда товар ещё не пришёл). Проводок НЕ делает (счёт не проводится), счета учёта не нужны. Табличная часть «Товары» вмещает и товары, и услуги (напр. доставку — задайте content/Содержание). Реквизиты входящего счёта: incomingNumber/incomingDate. По умолчанию dry-run; создание — при confirm=true. Контрагент — поставщик, договор — вида «СПоставщиком».

Input Schema

NameRequiredDescriptionDefault
dateNoДата документа YYYY-MM-DD (по умолчанию сегодня)
linesYesПозиции счёта (товары и услуги в одной таблице)
commentNoКомментарий к документу
confirmNofalse (по умолчанию) — только предпросмотр (dry-run), запись НЕ выполняется. true — выполнить создание. Сначала всегда показывайте dry-run и получайте согласие пользователя; при подтверждении передавайте operationId из результата предпросмотра и те же аргументы. После таймаута повторяйте подтверждение с тем же id, не создавая новый предпросмотр.
databaseNoИмя базы 1С из list_databases. Без указания — база по умолчанию.
contractRefNoRef_Key договора (вид «СПоставщиком»)
operationIdNoUUID из предпросмотра. Передайте его при confirm=true, чтобы повтор не создал дубликат.
incomingDateNoДата входящего счёта YYYY-MM-DD
organizationNoОрганизация (юрлицо) для фильтра: часть названия, ИНН или Ref_Key из list_organizations. Без указания — все организации базы.
incomingNumberNoНомер входящего счёта поставщика
sumIncludesVatNoСумма включает НДС
counterpartyRefYesRef_Key контрагента-поставщика
supplierBankAccountRefNoRef_Key банковского счёта поставщика (БанковскийСчетКонтрагента)

Output Schema

NameRequiredDescriptionDefault
refNo
codeNo
noteNo
notesNo
dryRunNo
createdNo
payloadNo
databaseNo
replayedNo
entitySetNo
willCreateNo
descriptionNo
operationIdNo
writableBaseNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.12.0

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (non-readonly, non-destructive, open-world), the description discloses that no postings are generated and no accounting accounts are required, and that the default call is a dry-run requiring confirm=true to write. It does not discuss idempotency beyond the operationId note carried in the schema, or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and the key constraint (no postings) are front-loaded, and every sentence carries substantive information about behavior or prerequisites. The density of parentheticals makes it slightly harder to scan than it could be, but there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 13 parameters but only 2 required, full schema coverage, and an output schema, the description covers the critical operational points: dry-run/confirm, supplier-type counterparty and contract, and goods-vs-services lines. Nothing major is missing for correct invocation, though the dry-run user-consent protocol could be stated more prominently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the schema already documents confirm, operationId, content, and the «СПоставщиком» contract requirement in detail. The description reinforces a few of these (incomingNumber/incomingDate, content for services) but adds little meaning that the schema does not already carry, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ("Создаёт документ «Счёт на оплату поставщика»") and scopes it as an incoming invoice-basis for payment used for prepayment before goods arrive. It also states what the tool is not (no postings, no accounting accounts), which separates it from posting and received-invoice siblings, though it never names those siblings explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a concrete use case (prepayment, goods not yet delivered) and spells out the dry-run → confirm workflow, plus the prerequisite that the counterparty be a supplier and the contract of type «СПоставщиком». Missing is an explicit "use create_received_invoice instead when…" routing statement against the closest sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools