Shopify Admin GraphQL Gateway MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHOPIFY_CLIENT_ID | Yes | Server-side Shopify app client ID. | |
| SHOPIFY_MAX_PAGES | No | Maximum pages in one tool call, capped at 100. | 10 |
| SHOPIFY_API_VERSION | No | Fixed quarterly Admin API version. Must use YYYY-01, YYYY-04, YYYY-07, or YYYY-10. | 2026-07 |
| SHOPIFY_STORE_DOMAIN | Yes | Accepts your-store or your-store.myshopify.com; schemes, paths, ports, and other domains are rejected. | |
| SHOPIFY_CLIENT_SECRET | Yes | Server-side Shopify app secret. Never expose it to LibreChat's model or Code Interpreter. | |
| SHOPIFY_MAX_PAGE_SIZE | No | Maximum first or last, capped at 250. | 100 |
| SHOPIFY_ALLOWED_SCOPES | Yes | Comma-separated exact scope allowlist. | |
| SHOPIFY_ENABLE_MUTATIONS | No | Mutation execution kill switch. Preview remains available. | false |
| SHOPIFY_LIBRECHAT_USER_ID | No | Trusted authenticated user identity. Required for mutation preview/execution. | |
| SHOPIFY_LIBRECHAT_AGENT_ID | No | Trusted active-agent identity. Required for mutation preview/execution and recorded in audits. | |
| SHOPIFY_REQUEST_TIMEOUT_MS | No | Overall request/pagination deadline, from 1–120 seconds. | 30000 |
| SHOPIFY_CONFIRMATION_TTL_SECONDS | No | Mutation confirmation lifetime, from 30–900 seconds. | 300 |
| SHOPIFY_TOKEN_REFRESH_BUFFER_SECONDS | No | Refresh before token expiry. | 300 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| shopify_admin_graphql_queryA | Executes one read-only Shopify Admin GraphQL query against the configured store. The store and API version cannot be overridden. Optional bounded cursor pagination requires explicit connection metadata. |
| shopify_admin_graphql_preview_mutationA | Validates but does not execute exactly one Shopify mutation. Returns the variables, estimated scopes, affected resource IDs, change summary, and a short-lived user-bound confirmation token. |
| shopify_admin_graphql_execute_mutationA | Executes a previously previewed mutation using its one-time confirmation token. Disabled unless SHOPIFY_ENABLE_MUTATIONS=true. |
| shopify_admin_product_countsA | Uses productsCount—not paginated products—to return total, active, draft, archived, and unlisted product counts. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: product counts, read-only queries, mutation preview, and mutation execution. There is no overlap or ambiguity between them.
All tools share the consistent 'shopify_admin' prefix and use snake_case. The three GraphQL tools follow a clear 'graphql_<action>' pattern, but 'product_counts' deviates as a noun phrase rather than a verb_noun structure.
With only 4 tools, the server is tightly scoped to its purpose as a GraphQL gateway. Each tool is necessary and covers a distinct aspect of the interaction model.
The set provides complete lifecycle coverage for the gateway domain: read operations via query, mutation handling via preview and execute, and a convenience count tool. No obvious missing operations within the stated scope.