Skip to main content
Glama

Assign Orders

starshipit_assign_orders

Reassign StarShipIt orders between accounts with API keys to route orders to the correct fulfilment account.

Instructions

Reassign orders between StarShipIt accounts using API keys. Use this to move orders from one StarShipIt sub-account or warehouse account to another.

When to use: Use in multi-account or multi-warehouse setups where orders need to be routed to a specific fulfilment account after initial import.

Parameters:

  • orders (required) — Array of assignment instructions, each containing:

    • order_id (required) — The order ID to reassign

    • current_api_key (required) — API key of the account currently holding the order

    • new_api_key (required) — API key of the destination account

Returns: Confirmation of how many orders were reassigned.

Errors: 400 if any entry is malformed; 401 if any API key is invalid; 403 if you lack permission to access the source or destination account; 404 if any order not found.

Input Schema

NameRequiredDescriptionDefault
ordersYesArray of order assignment instructions

Output Schema

NameRequiredDescriptionDefault
errorsNoValidation or processing errors returned by StarShipIt
objectNoThe response payload when StarShipIt returns a non-object value
successNoStarShipIt success flag (a boolean on most endpoints)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare non-read-only, non-destructive, non-idempotent, open-world behavior, and the description adds genuinely useful context beyond that: it requires valid API keys for both source and destination accounts, returns a count of reassigned orders, and enumerates 400/401/403/404 failure modes. It does not address the non-idempotent nature (re-running with a stale current_api_key will fail) or whether partial batch success is possible, which are the remaining behavioral gaps.

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-loaded with purpose, then usage, then parameters, then returns and errors — a clean, scannable structure. The parameter section largely duplicates the JSON schema, which is the one place words could be trimmed, but nothing is confusing or buried.

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

Completeness5/5

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

For a single-parameter, nested-instruction mutation tool this covers everything an agent needs: intent, when to use it, required inputs, a return-value summary (even though an output schema exists), and the full error taxonomy. Nothing material is left for the agent to infer.

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 both the top-level array and each nested field are already documented in the schema with the same wording. The description's parameter block restates order_id, current_api_key, and new_api_key without adding meaning such as how to obtain a source account's key or the batch-atomicity semantics.

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?

The description opens with a specific verb and resource — 'Reassign orders between StarShipIt accounts using API keys' — and immediately scopes it to 'move orders from one StarShipIt sub-account or warehouse account to another.' No sibling tool performs reassignment, so the agent can distinguish this from update/merge/clone tools without opening a schema.

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?

The 'When to use' block gives a concrete scenario (multi-account or multi-warehouse setups, routing orders after initial import), which is exactly the context an agent needs to select this over update_order or merge_orders. It does not name an explicit alternative or a when-not condition, which keeps it below a 5.

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