Skip to main content
Glama

Saleor MCP Server

Official
by saleor

Saleor MCP Server

A Model Context Protocol (MCP) server for Saleor Commerce that provides integration with AI assistants and tools.

Getting Started

The Saleor MCP server allows AI assistants to interact with Saleor instance in order to fetch data about products, customers, and orders. The MCP is read-only - it doesn't trigger any mutations in the Saleor API.

Easiest way to try out the Saleor MCP server is by visiting the production instance deployed at:

https://mcp.saleor.app/

You can connect to the server with Streamable HTTP at https://mcp.saleor.app/mcp endpoint. See the Configuration section below for details on required headers. The production instance is configured to connect to Saleor instances hosted on saleor.cloud domain and it's compatible with Saleor 3.22.

Installation

The following instructions will help you set up the Saleor MCP server locally for development and testing purposes.

Prerequisites

  • Python 3.12 or higher

  • uv package manager

Setup

  1. Clone the repository

    git clone git@github.com:saleor/saleor-mcp.git cd saleor-mcp
  2. Install dependencies

    uv sync
  3. Run the MCP server locally

    uv run saleor-mcp

    The server will start on http://localhost:6000

Configuration

X-Saleor-API-URL and X-Saleor-Auth-Token headers

The Saleor MCP server uses two headers to configure connection to the Saleor API:

  • X-Saleor-API-URL - The URL of the Saleor API endpoint.

  • X-Saleor-Auth-Token - The authentication token for accessing the Saleor API. The token must have MANAGE_PRODUCTS and MANAGE_ORDERS permissions to access the available tools.

Make sure to include these headers in your requests to the MCP server.

ALLOWED_DOMAIN_PATTERN env variable

The ALLOWED_DOMAIN_PATTERN environment variable is used to specify a regex pattern for allowed API domains that the MCP server can connect to. When set, the server will validate the X-Saleor-API-URL header against this pattern. If not set, any domain is allowed. Patten must include escaping for special characters.

Example: https:\/\/.*\.saleor\.cloud\/graphql\/ - allows any subdomain of saleor.cloud and the /graphql/ path.

Integration with AI Assistants

Saleor MCP can be enabled in AI assistants that support integration with custom MCP servers using Streamable HTTP and setting the appropriate headers.

Below is the example configuration for VSCode / Copilot using mcp.json file:

{ "servers": { "saleor-mcp": { "type": "http", "url": "https://mcp.saleor.app/mcp", "headers": { "X-Saleor-Auth-Token": "eyJhb...", "X-Saleor-API-URL": "https://example.saleor.cloud/graphql/" } } } }

Development

This project uses ariadne-codegen to generate Saleor API client code from the GraphQL schema. See pyproject.toml for configuration. To regenerate the client locally run:

ariadne-codegen
-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Enables AI assistants to interact with Saleor Commerce instances to fetch data about products, customers, and orders through a read-only GraphQL API integration. Supports secure authentication and domain validation for connecting to Saleor cloud instances.

  1. Getting Started
    1. Installation
      1. Prerequisites
      2. Setup
    2. Configuration
      1. X-Saleor-API-URL and X-Saleor-Auth-Token headers
      2. ALLOWED_DOMAIN_PATTERN env variable
    3. Integration with AI Assistants
      1. Development

        MCP directory API

        We provide all the information about MCP servers via our MCP API.

        curl -X GET 'https://glama.ai/api/mcp/v1/servers/saleor/saleor-mcp'

        If you have feedback or need assistance with the MCP directory API, please join our Discord server