A Model Context Protocol implementation for interacting with Saleor e-commerce platform
Transform how you interact with your Saleor store data
The Model Context Protocol (MCP) is a way to plug Saleor's API into an LLM, letting you ask questions about your store data in the context of the LLM itself. This lets you take an agent that you already use, like Cursor, and pull in additional information from Saleor to help with tasks like business analysis, inventory management, and customer insights.
Connecting Saleor to LLMs allows you to easily get answers to questions like:
This provides an easy interface to learn insights about your Saleor store without needing to navigate through different dashboards or write complex queries.
Quick setup guide to get you up and running
To get started with the Saleor MCP server, visit our GitHub repository which contains detailed installation instructions, configuration guides, and examples.
Note: The repository includes setup instructions for various MCP clients, authentication configuration, and example usage scenarios.
Pre-configured functions for common Saleor operations
Tools are pre-configured functions that can be used to help with common tasks. Each tool provides specific functionality for interacting with your Saleor store data.
Fetch the list of channels from Saleor.This tools retrieves the list of channels. For each channel it returns information such as: ID, name, slug, currency code, default country, whether the channel is active, and the list of warehouses.
在商城中创建一个商品分类。
str: 分类名称
str | None: 父分类 ID(可选,创建子分类用)
在商城中创建一个商品,含默认变体;提供 price 后自动定价可售。
str: 商品名称
str: 商品类型 ID(用 list_product_types 查询)
str | None: 渠道 ID;不传且给 price 时自动选默认渠道
str | None: 分类 ID(用 list_categories 查询)
float | None: 售价(元);提供则自动建变体并定价,商品即可售
str | None: 库存编码(可选)
str | None: 商品描述(纯文本,自动转富文本)
Return the current domain of the connected Saleor instance.
Fetch list of customers from Saleor GraphQL API.This tool retrieves customer information such as: ID, active status, language code, last login, date joined, and default shipping/billing address country.
int | None: Number of customers to fetch (max 100 per request)
str | None: Cursor for pagination - fetch customers after this cursor
saleor_mcp.saleor_client.input_types.UserSortingInput | None: Sort customers by specific field
saleor_mcp.tools.customers.CustomerFilterInput | None: Filter customers by specific criteria
删除商城中的一个商品(不可恢复)。
str: 商品 ID
删除商品的一张图片(不可恢复)。
str: 商品媒体 ID
抓取一个外部商城商品页,提取名称/价格/图片/描述(只读公开信息)。
str: 外部商城商品页 URL(如淘宝/京东/独立商城商品详情页)
把素材目录里的一个商品文件夹导入商城:图片 + info.json(名称/价格/描述/分类)→ 建品传图。
str: 素材子目录名(list_assets 查看;目录含图片和可选 info.json)
str: 商品类型 ID
str | None: 渠道 ID;不传时自动选默认渠道
float | None: 价格覆盖;不传则用 info.json 的 price,都没有则报错
int: 最多导入图片张数
抓取外部商城商品 → 自动创建商品 + 上传图片,一步完成。
str: 外部商城商品页 URL
str: 商品类型 ID(list_product_types 查询)
str | None: 渠道 ID;不传时自动选默认渠道
str | None: 分类 ID(可选)
float | None: 价格覆盖;不传则用抓取到的价格,抓不到则报错
str | None: 名称覆盖;不传则用抓取到的名称
int: 最多导入图片张数
列出素材根目录下的商品素材(每个子目录 = 一个待导入商品)。
str | None: 子目录(相对素材根目录);不传列出全部
查询商城商品分类列表(id 与 name),供建品时选择。
int: 最多返回数量
查询商城商品类型(建品必填 product_type_id)。
int: 最多返回数量
Fetch total count of orders from Saleor GraphQL API.This tool retrieves the total count of orders based on the provided filter criteria.
saleor_mcp.tools.orders.OrderFilterInput | None: Filter and search orders by specific criteria
Fetch list of orders from Saleor GraphQL API.This tool retrieves the list of orders. For each order it returns information such as: ID, number, status, creation date, last update date, payment status, total amount, shipping and billing address country, order lines which include: quantity, product SKU, variant name, product ID, product name, unit price.
int | None: Number of orders to fetch (max 100 per request)
str | None: Cursor for pagination - fetch orders after this cursor
saleor_mcp.saleor_client.input_types.OrderSortingInput | None: Sort orders by specific field
saleor_mcp.tools.orders.OrderFilterInput | None: Filter and search orders by specific criteria
Fetch list of products from Saleor GraphQL API.This tool retrieves product information such as: ID, name, slug, external reference, product type, category, date of creation, date of last update, and pricing.
int | None: Number of products to fetch (max 100 per request)
str | None: Cursor for pagination - fetch products after this cursor
str | None: Slug of a channel for which the data should be returned. If not provided, general product data is returned.
saleor_mcp.saleor_client.input_types.ProductOrder | None: Sort products by specific field
str | None: Search products with full-text search
Fetch list of stocks from Saleor GraphQL API.This tool retrieves stock information such as: ID, quantity, allocated quantity, warehouse information, and associated product variant details.
int | None: Number of stocks to fetch (max 100 per request)
str | None: Cursor for pagination - fetch stocks after this cursor
saleor_mcp.saleor_client.input_types.StockFilterInput | None: Filter stocks by specific criteria
更新商品的基本信息(名称/描述/分类)。
str: 商品 ID
str | None: 新名称
str | None: 新描述(纯文本)
str | None: 新分类 ID
给指定商品添加一张图片(从 URL 下载并上传入库)。
str: 商品 ID
str: 图片 URL(下载后上传入库)
str | None: 图片替代文本
Fetch warehouse details from Saleor GraphQL API.This tool retrieves detailed warehouse information including: ID, name, slug, address details, click and collect options, associated shipping zones with their channels and countries, and metadata.
str | None: ID of the warehouse to fetch details for