Skip to main content
Glama

Bulk Create Orders

starshipit_create_orders_bulk

Import multiple orders into StarShipIt in a single API call for batch fulfilment, avoiding repeated individual order creation calls from external systems.

Instructions

Import multiple orders into StarShipIt in a single API call. Use this for batch fulfilment import from external systems.

When to use: Use instead of calling starshipit_create_order in a loop when you have many orders to import at once. More efficient and rate-limit-friendly.

Parameters:

  • orders (required) — Array of order objects (same shape as starshipit_create_order). Each must include order_number and destination.

Returns: Summary of created orders including any per-order failures with error details.

Errors: 400 if any order payload is malformed; 409 if any order number already exists; 401 if API keys invalid.

Input Schema

NameRequiredDescriptionDefault
ordersYesArray of order objects to import (each must have order_number and destination)

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.4/5.0
Behavior4/5

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

Annotations only declare the generic profile (write, non-idempotent, non-destructive, open-world); the description adds substantial context beyond that: per-order failure reporting in the response, 400/409/401 semantics, and low-level validation. The one gap is atomicity — it is not fully clear whether a duplicate order number (409) rejects the whole batch or just that entry, which matters greatly for a batch import.

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?

Front-loaded purpose sentence, then labelled When to use / Parameters / Returns / Errors sections. Every line carries operational value and there is no filler or repetition of the schema field-by-field.

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?

Given an output schema exists, the description needn't detail return values, and it wisely only summarises 'summary of created orders plus per-order failures'. Errors and the batch-vs-loop tradeoff are covered. The remaining hole is partial-failure/rollback behavior for a mixed batch, which is the one thing an agent handling a large import would want stated.

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 coverage is 100%, so the nested order shape, required fields and item/package structure are already documented. The description adds a useful cross-reference ('same shape as starshipit_create_order') and restates the required order_number/destination, but nothing about the array constraints or per-item semantics beyond the schema. Baseline 3 is appropriate.

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 ('Import multiple orders into StarShipIt in a single API call') and immediately scopes it as batch fulfilment import. The existence of the singular sibling and the framing make the bulk scope unambiguous without opening either schema.

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

Usage Guidelines5/5

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

Explicitly names the alternative ('Use instead of calling starshipit_create_order in a loop') and the condition that selects this tool (many orders at once, rate-limit efficiency). This is exactly the when-to-use/when-not guidance an agent needs to route between the two create tools.

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