This server allows you to interact with Shopify store data via GraphQL API through three main management areas:
Product Management: Retrieve all products, search by title, or get specific product details by ID.
Customer Management: Fetch all customers, search by name/email, and update customer information (name, email, phone, tags, notes, tax exemption status, and metafields).
Order Management: Get orders with filtering options (status, limit), retrieve specific orders by ID, get orders for a specific customer, and update order details (tags, notes, email, metafields, shipping address, and custom attributes).
Direct integration with Shopify's GraphQL Admin API for querying and manipulating store data with comprehensive error handling for API and authentication issues.
Enables interaction with Shopify store data through GraphQL API, providing tools for managing products, customers, orders, and more with capabilities for searching, retrieving, and filtering store information.
Shopify MCP Server
(please leave a star if you like!)
MCP Server for Shopify API, enabling interaction with store data through GraphQL API. This server provides tools for managing products, customers, orders, and more.
Features
Product Management: Search and retrieve product information
Customer Management: Load customer data and manage customer tags
Order Management: Advanced order querying and filtering
GraphQL Integration: Direct integration with Shopify's GraphQL Admin API
Comprehensive Error Handling: Clear error messages for API and authentication issues
Prerequisites
Node.js (version 16 or higher)
Shopify Custom App Access Token (see setup instructions below)
Setup
Shopify Access Token
To use this MCP server, you'll need to create a custom app in your Shopify store:
From your Shopify admin, go to Settings > Apps and sales channels
Click Develop apps (you may need to enable developer preview first)
Click Create an app
Set a name for your app (e.g., "Shopify MCP Server")
Click Configure Admin API scopes
Select the following scopes:
read_products
,write_products
read_customers
,write_customers
read_orders
,write_orders
Click Save
Click Install app
Click Install to give the app access to your store data
After installation, you'll see your Admin API access token
Copy this token - you'll need it for configuration
Usage with Claude Desktop
Add this to your claude_desktop_config.json
:
Locations for the Claude Desktop config file:
MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%/Claude/claude_desktop_config.json
Alternative: Run Locally with Environment Variables
If you prefer to use environment variables instead of command-line arguments:
Create a
.env
file with your Shopify credentials:SHOPIFY_ACCESS_TOKEN=your_access_token MYSHOPIFY_DOMAIN=your-store.myshopify.comRun the server with npx:
npx shopify-mcp-server
Direct Installation (Optional)
If you want to install the package globally:
Then run it:
Available Tools
Product Management
get-products
Get all products or search by title
Inputs:
searchTitle
(optional string): Filter products by titlelimit
(number): Maximum number of products to return
get-product-by-id
Get a specific product by ID
Inputs:
productId
(string): ID of the product to retrieve
Customer Management
get-customers
Get customers or search by name/email
Inputs:
searchQuery
(optional string): Filter customers by name or emaillimit
(optional number, default: 10): Maximum number of customers to return
update-customer
Update a customer's information
Inputs:
id
(string, required): Shopify customer ID (numeric ID only, like "6276879810626")firstName
(string, optional): Customer's first namelastName
(string, optional): Customer's last nameemail
(string, optional): Customer's email addressphone
(string, optional): Customer's phone numbertags
(array of strings, optional): Tags to apply to the customernote
(string, optional): Note about the customertaxExempt
(boolean, optional): Whether the customer is exempt from taxesmetafields
(array of objects, optional): Customer metafields for storing additional data
get-customer-orders
Get orders for a specific customer
Inputs:
customerId
(string, required): Shopify customer ID (numeric ID only, like "6276879810626")limit
(optional number, default: 10): Maximum number of orders to return
Order Management
get-orders
Get orders with optional filtering
Inputs:
status
(optional string): Filter by order statuslimit
(optional number, default: 10): Maximum number of orders to return
get-order-by-id
Get a specific order by ID
Inputs:
orderId
(string, required): Full Shopify order ID (e.g., "gid://shopify/Order/6090960994370")
update-order
Update an existing order with new information
Inputs:
id
(string, required): Shopify order IDtags
(array of strings, optional): New tags for the orderemail
(string, optional): Update customer emailnote
(string, optional): Order notescustomAttributes
(array of objects, optional): Custom attributes for the ordermetafields
(array of objects, optional): Order metafieldsshippingAddress
(object, optional): Shipping address information
Debugging
If you encounter issues, check Claude Desktop's MCP logs:
License
MIT
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
for shopify api interaction including product, customer, order
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityEnables interaction with Shopify store data using the GraphQL API, supporting product, customer, and order management with comprehensive error handling.Last updated -6413MIT License
- AsecurityAlicenseAqualityEnables interaction with Shopify store data via GraphQL API, providing tools for managing products, customers, orders, discounts, and more with robust error handling.Last updated -6430MIT License
- -securityAlicense-qualityEnables interaction with Shopify stores through GraphQL API, providing tools for managing products, customers, orders, and more.Last updated -648MIT License
- -securityAlicense-qualityEnables interaction with Shopify store data (products, customers, orders) via GraphQL, providing comprehensive tools for store management through Claude.Last updated -642MIT License