# Shopify MCP

> Shopify MCP connects your entire e-commerce backend to any AI client. Manage products, process orders, track inventory, and query customer profiles—all through natural conversation. Don't open a dozen dashboards; just ask your agent what you need done.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** storefront-management, product-catalog, order-fulfillment, customer-intelligence, inventory-tracking, pos

## Description

Running an online store means jumping between dozens of tabs: the order page, the product catalog, the shipping tracker, and the discount rules. This MCP lets you manage every piece of that operation without ever touching a dashboard. You connect your Shopify store via Vinkius to any AI client, turning complex backend management into simple conversation. Need to know if an item is stocked in the Dallas warehouse? Ask. Want to create a new seasonal product and set its price? Tell your agent. It handles listing products, checking inventory levels by location, finding customer purchase histories, and even closing orders once they ship out. You treat your entire store like a single chat session.

## Tools

### list_products
Retrieves a list of all product titles and basic details available in the store.

### list_inventory_levels
Checks current stock quantities for specific products at predefined warehouse locations.

### list_collections
Shows which grouped collections of products are currently set up on the site.

### list_price_rules
Lists all active discount rules and promotional pricing structures used in the store.

### get_product
Fetches comprehensive details for a single, specific product ID.

### create_product
Adds an entirely new product listing to the Shopify catalog with initial details and pricing.

### list_orders
Retrieves a list of customer orders, allowing filtering by status (open, closed, cancelled).

### get_order
Pulls detailed information for one specific order, including all line items and shipping details.

### close_order
Marks an existing order as completed or fulfilled after manual handling or shipment confirmation.

### list_customers
Provides a directory listing of all customer accounts registered in the store.

### get_customer
Retrieves the full profile and details for a specific customer ID.

### search_customers
Finds customers using search queries based on email, name, or other identifying fields.

### update_product
Modifies one or more fields of an existing product listing without affecting the rest of the data.

### delete_product
Irreversibly removes a product and all its associated variants from the catalog.

### count_products
Returns the total count of products, useful for quick audit metrics.

### cancel_order
Cancels an existing order; this action cannot be undone after processing.

### count_orders
Provides a total count of orders, filterable by status (open, closed, etc.).

### create_customer
Registers a brand new customer profile account in the store's system.

### list_locations
Lists all physical or virtual locations used for inventory tracking within the store.

### list_smart_collections
Shows which automated product collections are currently running based on rules.

### list_fulfillments
Retrieves a list of fulfillment records associated with an order number.

### list_themes
Lists the various website themes available for deployment on the store.

### list_pages
Shows a list of static web pages like About Us or Contact, along with their publication status.

## Prompt Examples

**Prompt:** 
```
Show me the last 10 orders and their status.
```

**Response:** 
```
Here are your last 10 orders:

1. **#1042** — $89.99 — Fulfilled ✅
2. **#1041** — $245.00 — Pending ⏳
3. **#1040** — $32.50 — Shipped 📦
...

Would you like details on any specific order?
```

**Prompt:** 
```
Create a new product called 'Premium Wireless Earbuds' for $79.99
```

**Response:** 
```
✅ Product created successfully!

- **Title**: Premium Wireless Earbuds
- **ID**: 8234567890
- **Status**: Draft

Would you like to add variants, images, or publish it?
```

**Prompt:** 
```
Check inventory levels at our main warehouse.
```

**Response:** 
```
Inventory at Location #12345:

| Product | SKU | Available |
|---------|-----|----------|
| Wireless Earbuds | WE-001 | 142 |
| Phone Case | PC-100 | 87 |
| USB Cable | UC-200 | 334 |

3 items are below reorder point.
```

## Capabilities

### Process all pending orders
The agent can list existing orders, retrieve full details including line items, and close the order record after fulfillment.

### Manage product inventory across locations
You check stock levels for specific products at various store locations using the dedicated location tools.

### Update or create items in the catalog
The agent can draft new products, update existing pricing fields, and even permanently delete old listings when necessary.

### Look up customer purchase history
You search for a customer by name or email address to view their full profile and past purchases.

### View store assets and rules
The agent can list active product collections, check available discount price rules, and see all store-level pages and themes.

## Use Cases

### Investigating a missing shipment
A customer calls about an order that was marked as shipped but hasn't arrived. You use your agent to `get_order` details, check the fulfillment records via `list_fulfillments`, and confirm the last known shipping status for the client.

### Running a flash sale cleanup
The marketing team needs to quickly remove several discontinued items. Instead of manually finding them in the catalog, they use your agent to `list_products`, identify the SKUs, and run `delete_product` for all specified items.

### Onboarding a new client
The ops manager needs to audit the inventory. They ask the agent to `list_locations` first, then systematically check stock levels at each site using `list_inventory_levels`, building a full operational map.

### Creating seasonal bundles
A merchandiser decides to bundle three products. They use your agent to `create_product` for the new bundle, and then run `update_product` on the existing components to ensure they are correctly linked.

## Benefits

- Eliminate dashboard hopping. Instead of opening the Orders page to check status, you simply ask your agent for a list of all pending orders, getting immediate results without clicking through filters.
- Keep accurate stock counts instantly. Use tools like `list_inventory_levels` and `get_product` to verify if an item is in stock at a specific location before promising it to a client.
- Maintain clean records. When you finish processing an order, use `close_order` through your agent instead of manually changing the status on the web dashboard, guaranteeing data integrity.
- Handle customer issues faster. Search for customers using `search_customers` and pull up their entire purchase history instantly, allowing support agents to resolve queries in seconds.
- Build out product lines efficiently. You can use `create_product` or `update_product` directly from a prompt, drafting new listings and adjusting pricing without logging into the product editor.

## How It Works

The bottom line is that you stop navigating menus and start talking directly to your store's backend functions through your AI agent.

1. Subscribe to this MCP on Vinkius and provide your Shopify store name along with an Admin API access token.
2. Connect the service credentials to your preferred AI client, like Cursor or Claude.
3. Use natural language prompts—for example, 'What is the inventory level for SKU XYZ at the main warehouse?'—and receive immediate data actions.

## Frequently Asked Questions

**How do I use the Shopify MCP to find a customer's order history?**
First, use `search_customers` to locate the correct profile. Then, you can ask your agent to run `get_order` on that account or list their recent orders using `list_orders`.

**Can I create a product listing using the Shopify MCP?**
Yes, you use the `create_product` tool. You just need to give your agent the title, description, and price points; it handles the rest of the data structure.

**What if I want to check inventory in multiple locations?**
You must first run `list_locations` to see all available warehouse IDs. Then, you use `list_inventory_levels`, providing the specific location ID for each product you need checked.

**How does the Shopify MCP handle order fulfillment?**
After an order is shipped, you can tell your agent to run `close_order`. This action updates the status in the system and completes the record without manual dashboard intervention.

**Does the Shopify MCP allow me to cancel an existing sale?**
Yes, you use the `cancel_order` tool. Be aware that this function is irreversible once processing begins.