shopify_graphql_query
Run read-only GraphQL queries against a Shopify store's Admin API to retrieve products, orders, customers, inventory, and other data without mutation risk.
Instructions
Execute a read-only GraphQL query against a Shopify store's Admin API.
Universal entry point for reading any data the token's scopes permit: products, variants, orders, customers, inventory, fulfillments, discounts, locations, markets, metafields, metaobjects, segments, shop settings, etc.
Full GraphQL reference: https://shopify.dev/docs/api/admin-graphql
Write mutations are rejected by design. The query string is parsed and validated as read-only before transmission.
Idiomatic patterns:
Pagination:
first: <=250,after: <cursor>, readpageInfo { hasNextPage endCursor }.Search: pass a Shopify search string to the
query:arg on connections, e.g.orders(first: 100, query: "created_at:>=2026-04-01 financial_status:paid").Money:
totalPriceSet { shopMoney { amount currencyCode } }.For datasets >10k records, use
shopify_bulk_queryinstead.
Args:
query: GraphQL document. Must be a query or a fragment. Subscription
and mutation operations are rejected - with one narrow exception,
bulkOperationCancel. For bulk exports, use shopify_bulk_query.
variables: Optional variables dict passed as GraphQL variables.
shop: Store alias (from shopify_list_stores) or domain. Required when
multiple stores are configured; optional (auto-selected) when there's
only one store.
api_version: Override API version (default "2026-04"). Format "YYYY-MM".
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| shop | No | ||
| query | Yes | ||
| variables | No | ||
| api_version | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |