Skip to main content
Glama

CashCtrl MCP by usefulapi

Change the status of orders

cashctrl_update_order_status
Destructive

WRITE: changes the accounting records. Makes one request that is never repeated; check the result before trying again. Sets the status of 1-20 orders (for example Draft to Open, or Open to Paid). A status can book journal entries or move stock, so the books change. POST /order/update_status.json.

Input Schema

NameRequiredDescriptionDefault
idsYes1-20 order ids.
status_idYesThe new status id (from the statuses of the order category, cashctrl_list_order_categories).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Beyond destructiveHint=true, the description discloses that the operation books journal entries, moves stock, and therefore changes the books, plus that the request is non-idempotent ('never repeated'). This is exactly the extra context annotations cannot convey, and it also names the underlying endpoint.

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?

Front-loads the critical 'WRITE:' marker and stays to a few tight clauses with no filler. Only the trailing endpoint string is marginally low-value for an agent that will not call HTTP directly.

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 two-parameter mutation with no output schema, the description covers the write nature, side effects on books and stock, batch size, and retry caution. It leaves open what happens if some of the 20 orders fail and what the response confirms, which would be the last useful detail.

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, but the description adds meaning by illustrating the kind of status transitions status_id represents and reaffirming the 1-20 batch limit that governs ids. It stops short of documenting id sourcing or failure semantics for partial batches.

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

Purpose5/5

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

States a specific verb and resource ('Sets the status of 1-20 orders') and grounds it with concrete transitions (Draft to Open, Open to Paid). An agent can distinguish this from cashctrl_delete_orders or cashctrl_create_order without opening any schema.

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?

Usage is only implied through the example transitions; there is no explicit when-to-use vs an alternative, nor any stated precondition such as required permissions. The retry advice ('check the result before trying again') is behavioral guidance rather than task-routing guidance.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.