Run a ready-made report across stores
store_reportGenerate combined, store-labelled Shopify reports across multiple stores for sales, orders, inventory, catalog gaps, and duplicate SKUs, so you can compare performance and spot issues in one answer.
Instructions
Ask every store (or the ones listed) at once and get one combined, store-labelled answer. Reports:
overview: Name, currency, plan, active and draft product counts, orders in the period, open unfulfilled orders and locations, per store.
sales: Order count, sales total (current order totals, after edits and refunds) and average order value per store for a period, excluding test and cancelled orders. Totals stay in each store's own currency.
unfulfilled: Open orders not yet fully fulfilled, grouped by age (under 1 day, 1-2, 2-7, over 7 days), with the oldest listed per store.
low_stock: Variants of active products with tracked inventory at or below a threshold (default 5). When more than one store is included, each low SKU is looked up in the other stores so stock can be moved.
find_product: Look a product up by SKU, handle or title words in every store, with its status, price, compare-at price and stock per variant. Use it to compare one product across stores.
catalog_gaps: Compares products by handle across stores: products missing from some stores, and products whose status (active, draft, archived) differs between stores.
catalog_health: Active products with gaps that hurt sales or search: no image, image without alt text, empty description, no SEO description, no product type, or a zero price.
duplicate_skus: SKUs used by more than one variant inside a store, and SKUs that point at different products in different stores.
recent_changes: Products updated in the period (default the last 7 days), newest first, per store. Periods default to the last 7 days; a bare date is read in each store's own time zone. Large stores are read up to max_pages pages and the result says when it stopped early.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"report": "<report>"
},
"name": "store_report"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sku | No | find_product: exact SKU. | |
| days | No | overview, sales, recent_changes: how many days back (default 7; 1 means since yesterday). | |
| limit | No | unfulfilled: how many of the oldest orders to list per store (default 5). | |
| query | No | find_product: title words or Shopify search syntax. catalog_gaps, catalog_health, duplicate_skus: optional filter such as "vendor:Acme". | |
| since | No | sales, overview, recent_changes: start date, for example 2026-10-01. Overrides days. | |
| until | No | sales, overview, recent_changes: end date (exclusive), for example 2026-10-31. | |
| handle | No | find_product: product handle. | |
| report | Yes | Which report to run. | |
| stores | No | Stores to include. Omit for every connected store. | |
| max_pages | No | Upper bound on pages read per store (each page is 100-250 records). Defaults differ per report. | |
| threshold | No | low_stock: report variants at or below this quantity (default 5). |