Shopify

MCP to query your shopify store
  • typescript

3

GitHub Stars

typescript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "tanush-yadav-shopify-mcp": {
      "command": "node",
      "args": [
        "path/to/shopify-mcp-server/dist/index.js"
      ],
      "env": {
        "MYSHOPIFY_DOMAIN": "your-store.myshopify.com",
        "SHOPIFY_ACCESS_TOKEN": "your_access_token"
      }
    }
  }
}

You have a Shopify MCP Server that lets you manage store data—products, customers, orders, and more—through GraphQL. It enables you to perform common store operations via a unified MCP interface, making it easier to build integrations and automate workflows from your MCP client.

How to use

Install, configure, and run the Shopify MCP Server so your MCP client can perform product, customer, and order operations through GraphQL. You will interact with the server through the MCP client to find products, manage customers, handle orders, and run debugging commands. The server exposes a set of tools that map to Shopify data entities and actions, and it handles authentication and error reporting to keep your workflows running smoothly.

To start, ensure you have a valid Shopify Custom App access token and the store domain. Run the server locally or connect to it via an HTTP MCP endpoint if you choose that deployment path. Your MCP client will call the available tools to perform reads and mutations against your Shopify store data.

How to install

Prerequisites: Node.js version 16+ and a Shopify Custom App access token.

git clone https://github.com/pashpashpash/shopify-mcp-server.git
cd shopify-mcp-server
npm install
npm run build

Additional configuration and usage notes

Configure the MCP server to run with the Shopify token and store domain. You will set environment variables to supply the necessary credentials to the server.

SHOPIFY_ACCESS_TOKEN=your_access_token
MYSHOPIFY_DOMAIN=your-store.myshopify.com

Claude Desktop integration (example)

The server can be wired to Claude Desktop using a configuration file that points to the local MCP server entry point and passes the needed environment variables.

{
  "mcpServers": {
    "shopify": {
      "command": "node",
      "args": ["path/to/shopify-mcp-server/dist/index.js"],
      "env": {
        "SHOPIFY_ACCESS_TOKEN": "your_access_token",
        "MYSHOPIFY_DOMAIN": "your-store.myshopify.com"
      }
    }
  }
}

Security and best practices

Keep your Shopify access token secure. Do not commit tokens to source control. Use per-environment tokens and restrict scopes to what you need (read/write for products, customers, and orders). If you deploy to production, consider using a secrets manager and rotate tokens periodically.

Troubleshooting

Common issues include authentication errors due to token or domain misformatting and API errors caused by rate limits or missing fields. Check your token, domain, and scopes, and ensure the server has network access to Shopify endpoints.

Developer notes

The server is designed to expose a set of tools that map to Shopify data operations. Use your MCP client to call these tools in a way that aligns with your workflow, such as searching products, listing customers, or creating and completing draft orders.

Debugging

Review the Claude Desktop MCP logs for runtime messages and errors. Use the following command to tail the logs on macOS where Claude writes its MCP logs.

tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

Development

To develop and test locally, install dependencies, build, and run tests as you would with a typical Node.js project.

npm install
npm run build
npm test

Dependencies

This server depends on the following packages: @modelcontextprotocol/sdk, graphql-request, and zod. These libraries enable GraphQL interaction, schema validation, and MCP protocol features.

License

MIT license.

Available tools

findProducts

Retrieve all products or search by title with optional filters like title, and limit results.

listProductsInCollection

Fetch products belonging to a specific collection by collectionId with an optional limit.

getProductsByIds

Get detailed product data for a list of product IDs.

getVariantsByIds

Retrieve variant data by IDs.

listCustomers

List customers with pagination by providing limit and next page cursor.

addCustomerTags

Attach tags to a specific customer by ID.

findOrders

Query orders with filters, sorting, and pagination.

getOrderById

Fetch a single order by its ID.

createDraftOrder

Create a draft order with line items, customer email, shipping address, and optional note.

completeDraftOrder

Complete a previously created draft order using draftOrderId and a variantId.

createDiscountCode

Create a basic discount code with value type, timing, and applicability.

listCollections

List all collections with optional name filtering and limit.

getShopDetails

Fetch basic shop details without inputs.

getExtendedShopDetails

Fetch extended shop details without inputs.

manageWebhooks

Subscribe, find, or unsubscribe webhooks for specified topics and a callback URL.

debugGetVariantMetafield

Fetch variant metafields, including size_chart_json, for debugging.

introspect_admin_schema

Introspect the Admin API GraphQL schema with optional filters.

search_dev_docs

Search Shopify developer docs with a query.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational