Skip to main content
Glama

Создать заказ

smartup_order_create
DestructiveIdempotent

Create a sales order from customer and product inputs; missing fields like warehouse, manager, and price type are filled from past orders. Draft by default; reusing external_id updates the same order.

Instructions

Заводит заказ в учётной системе. Достаточно указать клиента и товары: рабочую зону, менеджера, тип цены и склад коннектор подставит сам из заказов, которые уже прошли. По умолчанию заказ создаётся ЧЕРНОВИКОМ — склад его не соберёт, пока менеджер не проведёт документ. Требует включённого режима записи. Повторный вызов с тем же external_id обновляет тот же заказ, а не создаёт второй.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNoПримечание к заказу
statusNoСтатус документа. По умолчанию D — черновик
productsYesСтроки заказа
room_codeNoРабочая зона (код room)
robot_codeNoКод источника заказа, если он требуется в вашем контуре
external_idNoСвой номер заказа. Если не задан, будет сгенерирован
filial_codeNoФилиал. По умолчанию тот, что в настройках
no_autofillNoНе подставлять недостающие коды из прошлых заказов. По умолчанию подставляются: рабочая зона, менеджер, тип цены и склад берутся из документов, которые учётная система уже приняла
person_codeYesКод контрагента — кому отгружаем. Найти можно в smartup_contractors
currency_codeNoВалюта числовым кодом. По умолчанию 860 — сум
delivery_dateNoДата доставки. По умолчанию завтра
self_shipmentNoСамовывоз. По умолчанию нет
sales_manager_codeNoКод менеджера продаж

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already carry readOnlyHint=false, idempotentHint=true, and destructiveHint=true; the description adds genuinely useful behavior: default draft status that blocks warehouse until manager posts, the requirement of write mode, and the upsert semantics for external_id. This goes beyond the structured annotations and clarifies what the destructive/update behavior actually means.

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

Conciseness5/5

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

Four dense sentences, each earning its place: purpose, autofill, default draft, write mode, idempotency. No filler, and the most important behavioral caveats (draft, external_id upsert) are included.

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?

For a write operation with 13 parameters and no output schema, the description covers defaults, autofill, write-mode requirement, and update semantics. The only real gap is that it never states what the tool returns (e.g., order ID), which an agent would likely need after creation; still, the key behavioral constraints are present.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds meaning by explaining how optional parameters (room_code, sales_manager_code, price_type_code, warehouse_code) are autofilled from historical orders unless no_autofill is set, and by clarifying external_id's role in updates. This enriches the flat schema descriptions meaningfully.

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?

Clearly states the action ('Заводит заказ в учётной системе' – creates an order in the accounting system) and the minimal input needed (client + products). It is distinguishable from sibling status/note/read tools by the explicit creation semantics, though it doesn't name a specific sibling alternative.

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

Usage Guidelines3/5

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

Provides contextual guidance: the autofill rule (work zone, manager, price type, warehouse taken from past orders), default draft state, and idempotent update behavior. However, it never explicitly states when to prefer this tool over siblings such as smartup_order_status or smartup_order_note, so usage conditions are only implied.

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