Skip to main content
Glama

Order Write Tool

order-write
Destructive

Update an order's status, dates, notes, service, assignments, tags, metadata or linked orders. Collection fields replace their complete lists; omitted fields stay unchanged. Changes can notify clients and trigger integrations.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNoInternal order note. Max 65535 characters.
tagsNoTag IDs or names. Replaces current tags when provided. Prefer tag IDs from tag-read: a numeric name is treated as a tag ID.
actionYesAction to perform.
statusNoOrder status ID. Use numeric IDs, not status names.
serviceNoSnapshot service name on the order. Max 255 characters.
date_dueNoDue date/time. YYYY-MM-DD or ISO 8601.
metadataNoMetadata key/value map. Empty values delete that metadata key.
employeesNoEmployee/staff user IDs to assign, sent with action "update". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need order access. To find staff IDs by name, use staff-directory with assignable_to "order".
created_atNoCreation date/time. YYYY-MM-DD or ISO 8601.
service_idNoService ID to associate with the order.
date_startedNoStarted date/time. YYYY-MM-DD or ISO 8601.
order_numberNoOrder number. Required when updating an existing record.
linked_ordersNoOrder numbers to link bidirectionally. Replaces current linked orders when provided.
date_completedNoCompleted date/time. YYYY-MM-DD or ISO 8601.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / employees / description
      Previous value: -"Employee/staff user IDs to assign, sent with action \"update\". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need order access."New value: +"Employee/staff user IDs to assign, sent with action \"update\". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need order access. To find staff IDs by name, use staff-directory with assignable_to \"order\"."
    • changedInput schema / properties / tags / description
      Previous value: -"Tag names or IDs. Replaces current tags when provided."New value: +"Tag IDs or names. Replaces current tags when provided. Prefer tag IDs from tag-read: a numeric name is treated as a tag ID."
  2. Changed1 schema field changed
    • changedInput schema / properties / employees / description
      Previous value: -"Employee/staff user IDs to assign. Replaces current assignments when provided."New value: +"Employee/staff user IDs to assign, sent with action \"update\". Replaces the whole assignee list, so include everyone who should stay assigned. Roles limited to self-assignment can only add or remove their own ID. Assignees need order access."
  3. First observed

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the write/irreversible nature is known. The description still adds real value beyond them: collection fields replace their complete lists, omitted fields remain unchanged, and changes can notify clients and trigger integrations.

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?

Three compact sentences, front-loaded with the scope of the update, then the two rules that matter most (replace semantics, omitted-field preservation), then side effects. 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?

For a 14-parameter mutation tool with no output schema, the description covers the operation scope and the key replacement behavior. It omits permission/access requirements and any statement of what the response returns, though annotations cover the safety profile.

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%, so every parameter already documents its format, limits, and replacement semantics (e.g., tags, employees, linked_orders all note 'replaces'). The description's field list restates what the schema carries rather than adding new syntax or constraint detail, 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?

States a specific verb (Update) and resource (an order), then enumerates the updatable facets (status, dates, notes, service, assignments, tags, metadata, linked orders). An agent can distinguish this from order-read at a glance. It stops short of naming sibling tools, so it is clear but not maximally differentiated.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is offered. The mention that changes 'can notify clients and trigger integrations' hints at caution but never states prerequisites, permissions, or which alternative tools to consider when a narrower write is needed.

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.

Resources