Shopify MCP Server
by rezapex
Verified
<div align="center">
<h1>Shopify MCP Server</h1>
<p><strong>GraphQL-powered integration with Shopify Admin API</strong></p>
<p>
<a href="https://example.com/build-status"><img src="https://img.shields.io/badge/build-passing-brightgreen" alt="Build Status"></a>
<a href="https://www.npmjs.com/package/shopify-mcp-server"><img src="https://img.shields.io/badge/npm-1.0.1-blue" alt="npm version"></a>
<a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-green" alt="License"></a>
<a href="https://discord.gg/kR2DFxV8"><img src="https://img.shields.io/badge/Discord-Join%20Us-7289DA?logo=discord&logoColor=white" alt="Discord"></a>
</p>
</div>
## 🚀 Overview
Shopify MCP Server provides a powerful bridge between your applications and the Shopify ecosystem through the Model Context Protocol. Easily manage products, customers, orders, and more with simple API calls to Shopify's Admin API.
## 📋 Table of Contents
- [Installation](#-installation)
- [Features](#-features)
- [Available Tools](#-available-tools)
- [Getting Started](#-getting-started)
- [Use Cases](#-use-cases)
- [Setup Guide](#-setup-guide)
- [Development](#-development)
- [Community](#-community)
## 📥 Installation
Choose your preferred installation method:
| Method | Instructions |
|--------|--------------|
| **Smithery** | [](https://smithery.ai/server/@rezapex/shopify-mcp-server-main) |
| **Glama.ai** | [](https://glama.ai/mcp/servers/@rezapex/shopify-mcp-server-main) |
| **NPM** | `npm install shopify-mcp-server` |
## ✨ Features
- **🛍️ Comprehensive Product Management** - Search, retrieve, and manage product data
- **👥 Customer Data Access** - Get customer information and manage tags
- **📦 Advanced Order Processing** - Filter, sort, and manage orders easily
- **⚡ Direct GraphQL Integration** - Connect directly to Shopify's Admin API
- **🛡️ Robust Error Handling** - Clear feedback for troubleshooting
## 🧰 Available Tools
### Product Management
| Tool | Description | Key Parameters |
|------|-------------|----------------|
| `get-products` | Find products by title | `searchTitle`, `limit` |
| `get-products-by-collection` | Get collection products | `collectionId`, `limit` |
| `get-products-by-ids` | Retrieve specific products | `productIds` |
| `get-variants-by-ids` | Get variant details | `variantIds` |
### Customer Management
| Tool | Description | Key Parameters |
|------|-------------|----------------|
| `get-customers` | Retrieve customer data | `limit`, `next` |
| `tag-customer` | Add tags to customers | `customerId`, `tags` |
### Order Management
| Tool | Description | Key Parameters |
|------|-------------|----------------|
| `get-orders` | Filter and sort orders | `first`, `after`, `query`, `sortKey` |
| `get-order` | Get single order details | `orderId` |
### Shop & Collection Tools
| Tool | Description | Key Parameters |
|------|-------------|----------------|
| `get-collections` | Retrieve shop collections | `limit`, `name` |
| `get-shop` | Get basic shop details | None |
| `get-shop-details` | Get extended shop info | None |
### Discount Management
| Tool | Description | Key Parameters |
|------|-------------|----------------|
| `create-discount` | Create discount codes | `title`, `code`, `valueType`, `value` |
## 🏁 Getting Started
1. **Install the package**
```bash
npm install shopify-mcp-server
```
2. **Set up environment variables**
```
SHOPIFY_ACCESS_TOKEN=your_token
MYSHOPIFY_DOMAIN=your-store.myshopify.com
```
3. **Initialize the server**
```javascript
require('shopify-mcp-server').start();
```
4. **Make your first API call**
```javascript
const products = await shopifyMcpServer.tools.getProducts({ limit: 10 });
console.log(products);
```
## 💡 Use Cases
- **E-commerce Platform Integration** - Sync products and orders between systems
- **Custom Admin Dashboards** - Build tailored interfaces for your business needs
- **Order Automation** - Set up workflows for automatic order processing
- **Multi-channel Sales Management** - Manage inventory across all sales channels
## 🔧 Setup Guide
### Getting a Shopify Access Token
1. From your Shopify admin, go to **Settings** > **Apps and sales channels**
2. Click **Develop apps** > **Create an app**
3. Name your app (e.g., "Shopify MCP Server")
4. Configure API scopes:
- `read_products`, `write_products`
- `read_customers`, `write_customers`
- `read_orders`, `write_orders`
5. Click **Save** and **Install app**
6. Copy your **Admin API access token**
> **Security Note:** Store your access token securely. Never commit it to version control.
### Using with Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"shopify": {
"command": "npx",
"args": ["-y", "shopify-mcp-server"],
"env": {
"SHOPIFY_ACCESS_TOKEN": "<TOKEN>",
"MYSHOPIFY_DOMAIN": "<SHOP>.myshopify.com"
}
}
}
}
```
## 👨💻 Development
```bash
# Clone the repository
git clone https://github.com/your-username/shopify-mcp-server.git
# Install dependencies
cd shopify-mcp-server
npm install
# Set up environment variables
# Create a .env file with your Shopify credentials
# Build and test
npm run build
npm test
```
## 🤝 Community
| Resource | Link |
|----------|------|
| GitHub Discussions | [Join the conversation](https://github.com/modelcontextprotocol/servers/discussions) |
| Issue Tracker | [Report bugs](https://github.com/rezapex/shopify-mcp-server/issues) |
| Twitter | [@rezajafar](https://twitter.com/rezajafar) |
| Discord | [Join our server](https://discord.gg/kR2DFxV8) |
---
<div align="center">
<p>Built with ❤️ using the <a href="https://modelcontextprotocol.io">Model Context Protocol</a></p>
</div>