LiveRecoverVYG Developer Docs
MCPTools

Shopify MCP

Query and (on request) write to your own Shopify store through the CDP MCP — read-only by default, with a gated, audited write path.

The Shopify suite is a set of four tools on the CDP MCP server that let an AI client like Claude read from — and, once enabled, safely write to — your own connected Shopify store. Three of them wrap Shopify's official developer tooling so your client learns the real Admin API and validates GraphQL offline; the fourth executes a validated Admin GraphQL operation against your store.

They run on the same endpoint as the rest of the CDP MCP (https://cdp-mcp.vyg.app/mcp) and share its authentication and brand scoping. There is nothing extra to connect.

The four tools

ToolWhat it doesAccess
learn_shopify_apiLoad Shopify API documentation context. Call this first.Read-only
search_docs_chunksSearch Shopify developer documentation for relevant chunks.Read-only
validate_graphql_codeblocksValidate Admin GraphQL against the bundled schema — offline, no store call.Read-only
shopify_admin_graphqlExecute a validated Admin GraphQL operation against your store.Reads open · writes gated

The first three never touch your store: learn_shopify_api and validate_graphql_codeblocks run against Shopify's bundled instructions and schemas offline, while search_docs_chunks queries Shopify's live developer-documentation service. Only shopify_admin_graphql reaches your store, and it pre-validates every operation before spending any Shopify API budget.

Read by default, write by request

The execute tool, shopify_admin_graphql, enforces a two-tier model:

  • Reads are open to every brand entitled to the CDP MCP. Any GraphQL query runs against your store — orders, products, customers, inventory, and so on — with no extra flag.
  • Writes are dark by default. A GraphQL mutation runs only for a brand that holds writes enablement. Without it, a mutation is refused with a clear message — and your reads keep working. The check is fail-closed: any error looking up the flag denies the write.
  • Subscriptions are always rejected, even with writes enabled.

To turn on writes for your brand, contact the LiveRecover account team and request writes enablement. It is enabled per brand, on request.

Every write is audited

When writes are enabled, each mutation is recorded to an audit trail before it runs. The tool reserves a pending audit row — capturing the brand, operation, and variables — and only then calls Shopify; if the audit write fails, the mutation is blocked and never executes. There are no unaudited writes. After execution the row is finalized with the real outcome (success / error). Secret-shaped variable values (tokens, passwords, and the like) are redacted before the variables are stored.

A typical session

The four tools chain into a learn → search → validate → execute flow. In practice you just describe the goal and let the client walk the chain:

Load the Shopify Admin API docs, then find the 10 most recent orders in my store

Under the hood a well-behaved client will:

  1. learn_shopify_api with api: "admin" to load the Admin API context (and mint a conversationId).
  2. search_docs_chunks to find the right query shape for recent orders.
  3. validate_graphql_codeblocks to confirm the drafted query is valid against the bundled Admin schema — offline.
  4. shopify_admin_graphql to run the validated query against your store and return the data.

A write follows the same chain, ending in a mutation — which runs only if your brand holds writes enablement:

Draft a mutation to add the tag "vip" to customer 12345, validate it, then run it

Access requirements

  • CDP entitlement. The Shopify tools live on the CDP MCP server, so they require your brand's CDP entitlement — the same gate as every other CDP tool. If CDP is not enabled, every tool returns a clear access-denied error. Contact your LiveRecover account team to enable it.
  • A connected Shopify store. shopify_admin_graphql resolves your store domain and access token server-side from your brand's connected Shopify integration. If Shopify is not connected for your brand, the execute tool returns a clear not-connected message. (The documentation and validation tools work regardless — none of them touch your store.)
  • The writes flag (mutations only). writes enablement, enabled per brand on request.

Good to know

  • Your store only. The brand is taken from your authenticated session, never a tool parameter. shopify_admin_graphql can only ever reach the store connected to your own brand — one brand can never touch another's store or audit rows.
  • Pre-validation saves budget. Every operation is parsed and validated against the bundled Admin schema before any Shopify call, so a hallucinated field is caught locally and never spends your Shopify API budget.
  • Structured errors. Shopify throttling surfaces as a structured error with retry-after guidance; a missing scope names the exact scope to grant.
  • Bounded responses. A large result is truncated with an explicit marker so it can't overflow the MCP channel — narrow the query or paginate for complete data.
  • Your access token is never exposed. It never appears in tool output, errors, logs, or the audit trail.

On this page