Skip to main content
Glama
trhonpavel
by trhonpavel

List orders

list_orders
Read-only

Retrieve and filter orders, newest first, by search text, date range, customer, and order, payment, or fulfillment status to find and manage specific Medusa orders.

Instructions

Lists orders, newest first. Filters: full-text, date range (YYYY-MM-DD in the reporting timezone), customer, order/payment/fulfillment status.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNoFull-text search – order number, email, name…
limitNoNumber of records (max 200)
offsetNoRecords to skip (pagination)
statusNoOrder status
created_toNoTo date (inclusive), e.g. 2026-09-30
customer_idNo
created_fromNoFrom date, e.g. 2026-09-01
payment_statusNo
fulfillment_statusNoE.g. ['not_fulfilled'] = waiting to be fulfilled

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely new behavioral context: results are ordered newest-first, and date filter inputs are YYYY-MM-DD interpreted in the reporting timezone — neither of which the schema states (created_from/created_to say only 'From date, e.g. ...'). It stops short of describing result size or pagination behavior.

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?

Two sentences, no filler. The core behavior and sort order come first, then the filter list — exactly the order an agent needs them.

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 9-parameter, zero-required read tool with no output schema, the description covers ordering, date format/timezone, and filter categories. It leaves default behavior when no filters are supplied and result-set/pagination implications of limit/offset to the schema, a minor gap.

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 78%, and the description fills the most important gaps: it supplies the timezone semantics for the date range parameters and confirms that 'customer' maps to the otherwise undocumented customer_id field. It also groups status vs payment_status vs fulfillment_status for the reader, though it adds no enum values beyond the schema.

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 and resource ('Lists orders') plus the sort order ('newest first') and the full set of filter dimensions. The list-vs-get distinction against the sibling get_order is implied rather than named, and no sibling is explicitly referenced, so it falls short of the top band.

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?

The enumeration of available filters implies the browsing/search use case, but there is no explicit when-to-use guidance and no mention of the closest alternative, get_order, for retrieving a single order. Usage is inferable but not stated.

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