Shopify MCP Server

Shopify MCP Server

A Model Context Protocol (MCP) server to connect clients like Claude with Shopify store data. This server exposes tools for retrieving product and customer information from your Shopify store.

Tools

  • get-product-list: Retrieve a list of products from your Shopify store
  • get-customer-list: Retrieve a list of customers from your Shopify store
  • More to come soon

Prerequisites

  • Python 3.12 or higher
  • A Shopify store with API access
  • Shopify API credentials (API Key, Password, and Access Token)

Installation

  1. Clone the repository:
git clone https://github.com/siddhantbajaj/shopify-mcp-server.git cd shopify-mcp-server
  1. Create and activate a virtual environment using uv:
uv venv source .venv/bin/activate # On Unix/MacOS # or .venv\Scripts\activate # On Windows
  1. Install the package:
uv pip install -e .

Configuration

  1. Create a .env file in the root directory with your Shopify credentials:
SHOPIFY_SHOP_URL="your-store.myshopify.com" SHOPIFY_API_KEY="your_api_key" SHOPIFY_PASSWORD="your_api_password" SHOPIFY_ACCESS_TOKEN="your_access_token"

Replace the placeholder values with your actual Shopify API credentials.

Usage

  1. Start the MCP server:
python -m shopify_mcp_server.server
  1. The server exposes two tools:

get-product-list

Retrieves a list of products from your Shopify store.

  • Optional parameter: limit (default: 10) - Maximum number of products to return

get-customer-list

Retrieves a list of customers from your Shopify store.

  • Optional parameter: limit (default: 10) - Maximum number of customers to return

Tool Response Format

Products

Products (showing X): Title: Product Name ID: 123456789 Product Type: Type Vendor: Vendor Name Status: active Price: $XX.XX ---

Customers

Customers (showing X): Name: John Doe ID: 123456789 Email: john@example.com Orders Count: X Total Spent: $XX.XX ---

Development

This project uses:

Security

  • Never commit your .env file to version control
  • Keep your Shopify API credentials secure
  • Use environment variables for sensitive information

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request
-
security - not tested
A
license - permissive license
-
quality - not tested

This MCP server connects clients with Shopify store data, enabling retrieval of product and customer information via exposed tools.

  1. Tools
    1. Prerequisites
      1. Installation
        1. Configuration
          1. Usage
            1. get-product-list
              1. get-customer-list
              2. Tool Response Format
                1. Products
                  1. Customers
                  2. Development
                    1. Security
                      1. License
                        1. Contributing