mcp-shopify
# @cloud9-labs/mcp-shopify
MCP server for Shopify Admin API.
## Installation
Add this to your Claude Desktop configuration:
```json
{
"mcpServers": {
"mcp-shopify": {
"command": "npx",
"args": ["-y", "@cloud9-labs/mcp-shopify"],
"env": {
"SHOPIFY_STORE_URL": "YOUR_STORE_URL",
"SHOPIFY_ACCESS_TOKEN": "YOUR_ACCESS_TOKEN"
}
}
}
}
```
## Configuration
Set the following environment variables:
| Variable | Description |
|----------|-------------|
| `SHOPIFY_STORE_URL` | Your Shopify store URL (e.g., mystore.myshopify.com) |
| `SHOPIFY_ACCESS_TOKEN` | Admin API access token |
## Tools
| Tool | Description |
|------|-------------|
| `shopify_list_products` | List all products in Shopify store |
| `shopify_get_product` | Get a specific product by ID |
| `shopify_create_product` | Create a new product |
| `shopify_update_product` | Update an existing product |
| `shopify_list_orders` | List all orders |
| `shopify_get_order` | Get a specific order by ID |
| `shopify_list_customers` | List all customers |
| `shopify_get_customer` | Get a specific customer by ID |
| `shopify_create_customer` | Create a new customer |
| `shopify_search_customers` | Search for customers |
| `shopify_list_collections` | List all product collections |
| `shopify_get_inventory_levels` | Get inventory levels for products |
| `shopify_count_products` | Get total product count |
| `shopify_get_shop` | Get shop information |
## License
MIT
TDQS
Scored across 14 tools
Tool names clearly separate resources and actions, making most purposes obvious. The only possible confusion is between list_customers and search_customers, though their descriptions indicate different input modes.
All tools follow a consistent shopify_verb_noun pattern using snake_case. Action verbs like list, get, create, update, count, and search are applied uniformly across resources.
14 tools is a well-scoped size for a Shopify MCP server, covering the core resources without bloating the surface. Each tool serves a distinct purpose and the set remains navigable.
Products have solid CRUD coverage, but orders are read-only and customers lack update/delete operations. Collections and inventory are also minimally covered, with list-only and get-only tools respectively, leaving notable lifecycle gaps.