Skip to main content
Glama

Order items

get_order_items
Read-only

Use to inspect line items across many orders in one call, filtered by seller reporting date, order status, ASIN, or fulfillment channel. Grain: one row per order line item (order_id, order_item_id, ASIN, seller SKU, title, quantities, prices, pallet_delivery_requirement). pallet_delivery_requirement is Amazon's buyer-selected per-item delivery constraint: mandatory means Amazon returned MANDATORY; not_required means requested FULFILLMENT shipping data did not require a pallet; unknown means legacy, report-backed, or unavailable/malformed data and is never ordinary-parcel confirmation. Amazon's Orders API omits monetary fields while payment is unauthorized; Pending FBA rows can be enriched from Amazon's order-tracking report. Check item_price_availability and item_price_source; unavailable monetary values are null, never a synthetic zero. Omitting start_date/end_date returns only the trailing 90 days ending today — for any prior period (a past month or last year, e.g. year-over-year) you MUST pass explicit start_date and end_date. The asin filter matches line items containing that ASIN (gross, including cancelled/zero-quantity orders), not units sold. purchase_date is the seller reporting date; purchase_at and purchase_date_utc are included for UTC audit. For per-ASIN aggregates (units/revenue over time) use get_sales_velocity; for order headers only use get_orders; for account daily totals use get_sales_summary.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
asinNoFilter line items containing this ASIN
limitNoMaximum number of line items to return (max 500, default 50)
offsetNoPagination offset (0-100000, default 0). Use the returned pagination.next_offset to continue.
sort_byNoColumn to sort bypurchase_date
end_dateNoOptional. YYYY-MM-DD end date for seller reporting purchase_date.
sort_orderNoSort directiondesc
start_dateNoOptional. YYYY-MM-DD start date for seller reporting purchase_date.
order_statusNoFilter by order status (e.g. Pending, Shipped, Canceled)
include_raw_rowsNoFalse returns compact rows. Default true.
fulfillment_channelNoFilter by fulfillment channel: AFN (FBA) or MFN (merchant)
include_diagnosticsNoTrue may add expanded freshness diagnostics. Basic empty-result data-window diagnostics are included by default when available.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
evidenceNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

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

Despite annotations already establishing a safe read-only profile, the description adds substantial operational context: null monetary values when payment is unauthorized, item_price_availability/item_price_source checks, Pending FBA enrichment, the legacy/report-backed meaning of pallet_delivery_requirement 'unknown', and the asin filter being gross rather than units sold.

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?

Dense and front-loaded: the routing sentence and grain definition come first, followed by field semantics and alternatives. Every sentence carries information, though the middle block of caveats is long enough that a reader must work to extract the calling rules.

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 an 11-parameter, optional-everything read tool with an output schema and safety annotations, the description covers scope, grain, default date behavior, filter semantics, data-quality caveats, and sibling routing. Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description nevertheless adds real meaning the schema lacks — the 90-day default window for start_date/end_date, the gross-matching semantics of the asin filter, and the purchase_date (seller reporting) vs purchase_at/purchase_date_utc (UTC audit) distinction.

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?

Opens with a specific verb+resource and scope ('inspect line items across many orders in one call'), then defines the exact grain (one row per order line item) and lists the fields returned. It explicitly names the three siblings it is not (get_sales_velocity, get_orders, get_sales_summary) and the conditions that select them.

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?

Gives explicit when-to-use routing: per-ASIN aggregates -> get_sales_velocity, order headers -> get_orders, account daily totals -> get_sales_summary. It also states a hard 'when-not' rule: omitting dates silently limits results to the trailing 90 days, so any prior period REQUIRES explicit start_date/end_date.

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.