shopify-graphql-admin-mcp

shopify-graphql-admin-mcp

Enables full interaction with Shopify's Admin GraphQL API, including raw queries, schema exploration, and CRUD operations for products, collections, customers, and more.

Category
Visit Server

README

shopify-graphql-admin-mcp

MCP server providing full access to Shopify's Admin GraphQL API. Introspects the live schema on startup so it's always up-to-date with the latest API version — no stale docs, no embeddings needed.

Features

  • Raw GraphQL execution — run any query or mutation against the Admin API
  • Live schema introspection — search and explore the full GraphQL schema (2,700+ types) directly from your AI assistant
  • 29 convenience tools — typed, no-GraphQL-needed CRUD for products, collections, metaobjects, metafields, customers, orders, and inventory
  • Dual auth — supports both OAuth client credentials (new Dev Dashboard apps) and legacy access tokens (shpat_)
  • Auto token refresh — OAuth tokens are refreshed automatically before expiry

Quick Start

# With a legacy access token
npx shopify-graphql-admin-mcp --store mystore.myshopify.com --access-token shpat_xxxxx

# With OAuth client credentials (Dev Dashboard app)
npx shopify-graphql-admin-mcp --store mystore.myshopify.com --client-id YOUR_ID --client-secret YOUR_SECRET

Tools

Core

Tool Description
shopify_graphql Execute any raw GraphQL query or mutation
shopify_schema_search Search the live schema by keyword (types, queries, mutations)
shopify_schema_details Get full details for a specific type, query, or mutation

Products

Tool Description
shopify_products_list List/search products with pagination
shopify_product_get Get product by ID with variants and metafields
shopify_product_create Create a new product
shopify_product_update Update an existing product
shopify_product_delete Delete a product

Collections

Tool Description
shopify_collections_list List/search collections with pagination
shopify_collection_get Get collection by ID with products
shopify_collection_create Create a collection (manual or smart)
shopify_collection_update Update a collection
shopify_collection_delete Delete a collection

Metaobjects

Tool Description
shopify_metaobject_definitions_list List all metaobject type definitions
shopify_metaobjects_list List entries of a specific metaobject type
shopify_metaobject_get Get a single metaobject entry
shopify_metaobject_create Create a new metaobject entry
shopify_metaobject_update Update an existing metaobject entry
shopify_metaobject_delete Delete a metaobject entry

Metafields

Tool Description
shopify_metafields_list List metafields on any resource
shopify_metafields_set Set (upsert) metafields on any resource
shopify_metafield_delete Delete a metafield

Customers

Tool Description
shopify_customers_list List/search customers with pagination
shopify_customer_get Get customer by ID with orders
shopify_customer_update Update customer details

Orders

Tool Description
shopify_orders_list List/search orders with pagination
shopify_order_get Get order by ID with line items

Inventory

Tool Description
shopify_inventory_get_levels Get inventory levels across locations
shopify_inventory_adjust Adjust inventory quantity at a location

Required API Scopes

Configure these scopes on your app to enable all tools:

Scope Tools
read_products, write_products Products, inventory
read_metaobjects, write_metaobjects Metaobjects
read_content, write_content Metafields
read_customers, write_customers Customers
read_orders Orders
read_inventory, write_inventory Inventory adjustments
read_product_listings Product listings

You only need scopes for the tools you plan to use. At minimum for schema introspection and raw GraphQL to work, you need at least one read scope.

Authentication

OAuth Client Credentials (recommended)

For apps created in the Shopify Dev Dashboard:

  1. Create an app in the Dev Dashboard
  2. Configure the Admin API scopes listed above
  3. Release a version and install the app on your store
  4. Use the Client ID and Client Secret:
npx shopify-graphql-admin-mcp \
  --store mystore.myshopify.com \
  --client-id YOUR_CLIENT_ID \
  --client-secret YOUR_CLIENT_SECRET

Legacy Access Token

For existing custom apps with a shpat_ token:

npx shopify-graphql-admin-mcp \
  --store mystore.myshopify.com \
  --access-token shpat_xxxxx

Configuration

Flag Env Variable Description
--store SHOPIFY_STORE Store domain (required). Accepts mystore or mystore.myshopify.com
--access-token SHOPIFY_ACCESS_TOKEN Legacy access token (shpat_...)
--client-id SHOPIFY_CLIENT_ID OAuth client ID
--client-secret SHOPIFY_CLIENT_SECRET OAuth client secret
--api-version SHOPIFY_API_VERSION API version (default: 2025-01)

Usage with Claude Code

claude mcp add shopify -- npx shopify-graphql-admin-mcp \
  --store mystore.myshopify.com \
  --access-token shpat_xxxxx

Or add to your project's .claude.json:

{
  "mcpServers": {
    "shopify": {
      "command": "npx",
      "args": [
        "shopify-graphql-admin-mcp",
        "--store", "mystore.myshopify.com",
        "--access-token", "shpat_xxxxx"
      ]
    }
  }
}

Usage with Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "shopify": {
      "command": "npx",
      "args": [
        "shopify-graphql-admin-mcp",
        "--store", "mystore.myshopify.com",
        "--access-token", "shpat_xxxxx"
      ]
    }
  }
}

Schema Exploration

The killer feature: the server introspects Shopify's live GraphQL schema on startup, so your AI assistant can discover API capabilities in real-time.

You: "What mutations are available for metaobjects?"
→ AI uses shopify_schema_search with query "metaobject" filter "mutations"
→ Returns: metaobjectCreate, metaobjectUpdate, metaobjectDelete, metaobjectUpsert, ...

You: "What fields does MetaobjectCreateInput take?"
→ AI uses shopify_schema_details with name "MetaobjectCreateInput"
→ Returns: full type definition with all fields, types, and descriptions

This means the server works correctly even when Shopify releases new API versions — no code changes needed.

Development

git clone https://github.com/colbymchenry/shopify-graphql-admin-mcp.git
cd shopify-graphql-admin-mcp
npm install
npm run build
npm run dev  # watch mode

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured