Skip to main content
Glama

Zenfulfillment MCP by usefulapi

List inbound shipments

zenfulfillment_list_inventory_shipments
Read-only

List inbound inventory shipments (goods you sent to the warehouse) with reference, SKU lines, announced quantity, quantity arrived and note. Filter by ONE status, created/updated time or free text (ZF number, tracking code, type). Rows are grouped per shipment. Paging as in list_orders. GET /inventory_shipments/export.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, from 1 (default 1). Use the previous reply's next_page.
queryNoFree-text search: ZF number, tracking code, type.
statusNoOnly shipments in this status (one at a time).
per_pageNoResults per page, 10-50 (default 25).
created_afterNoOnly shipments created at or after this time.
updated_afterNoLower bound on the last update time (updatedAtMin).
created_beforeNoOnly shipments created at or before this time.
updated_beforeNoUpper bound on the last update time (updatedAtMax).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, destructiveHint=false, and openWorldHint, so the safety profile is covered. The description adds that rows are grouped per shipment and exposes the underlying endpoint (GET /inventory_shipments/export), which hints at bulk export semantics, but it says nothing about result volume, rate limits, or what happens when status and time filters combine.

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?

Three dense sentences, front-loaded with what the tool returns before moving to filters and paging. No filler, though the telegraphic phrasing ('reference, SKU lines, announced quantity, quantity arrived and note') packs a lot into one clause.

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?

Eight optional parameters with no output schema, but the description compensates by naming the returned fields and how rows are grouped per shipment. Paging defaults and per_page bounds live in the schema, so nothing critical for a correct call is missing; the combination rules across filters remain unaddressed.

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 all eight parameters are already documented, including the single-status constraint and free-text targets. The description restates the same facts (one status only, free text covering ZF number/tracking/type) and adds only the pointer that paging mirrors list_orders, so it delivers marginal value 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 ('List inbound inventory shipments') and immediately clarifies the domain concept as 'goods you sent to the warehouse', plus enumerates the returned columns (reference, SKU lines, announced vs arrived quantity, note). It is clearly distinguishable from zenfulfillment_get_inventory_shipment by being a list, though it never names that sibling explicitly.

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?

Provides a constraint ('Filter by ONE status') and cross-references a sibling for paging behavior ('Paging as in list_orders'), which is genuinely useful. However, it never states when to use this versus get_inventory_shipment for a single shipment, nor any prerequisites or exclusions.

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.