← 返回目录
S

Shopify MCP Server

社区
通过对话方式管理 Shopify 店铺的产品、客户与订单。
GitHub 源仓库 ↗
★ 236 Stars 分类 · 其他 热门 源版本 c90faaf43402
56FMRS · C
可靠性
8/20
安全与权限
9/20
维护活跃度
10/20
文档质量
16/20
安装易用性
13/20

源材料未提供第三方评测或用户评价数据,以上信息均基于项目 README 描述整理。

查看 FMRS 评分方法 →

Shopify MCP Server 是一个基于 TypeScript 开发的社区项目,通过 Shopify GraphQL Admin API(2026-01 版)为 MCP 主机(如 Claude、Cursor)提供对店铺数据的读写能力,共 31 个工具,覆盖产品、客户、订单、草稿订单、元字段(metafield)、库存与标签管理,并支持基于游标的分页、排序及 Shopify 查询语法过滤。认证支持两种方式:2026 年 1 月起新建的 Dev Dashboard 应用使用 OAuth 客户端凭据(Client ID/Secret,服务器会自动换取并刷新访问令牌),或使用旧版自定义应用的静态 shpat_ 访问令牌。项目以 MIT 协议开源,由个人开发者 GeLi2001 维护,并非 Shopify 官方产品。

工具能力

get-products
按标题搜索或列出全部产品,支持分页、排序与原生 Shopify 查询语法过滤。
get-product-by-id
按产品 GID 获取单个产品的完整信息,包括 SEO、选项、媒体、变体与所属分类。
create-product
创建新产品;若使用 productOptions,Shopify 只会生成一个默认变体,需后续用 manage-product-variants 创建真实变体。
update-product
更新已有产品的标题、描述、状态、标签、SEO、元字段及所属分类等字段。
delete-product
删除指定产品。
manage-product-options
创建、更新或删除产品选项(如尺码、颜色)。
manage-product-variants
批量创建或更新产品变体(价格、SKU、库存跟踪、条码、重量、选项值等)。
delete-product-variants
从产品中删除一个或多个变体。
get-customers
列出客户,支持自由文本或 Shopify 查询语法搜索、分页与排序。
get-customer-by-id
按数字 ID 获取单个客户的完整信息,包括地址、标签、消费金额与元字段。
create-customer
创建新客户,可设置姓名、邮箱、电话、标签、备注、免税状态、地址与元字段。
update-customer
更新客户信息,包括邮件营销同意状态与元字段。
delete-customer
删除指定客户。
customer-merge
将两个客户记录合并为一个,可指定保留哪一方的字段。
manage-customer-address
为客户创建、更新或删除邮寄地址,并可设为默认地址。
get-orders
按状态、原生查询语法筛选订单,支持分页与排序。
get-order-by-id
按订单名称(如 #77235)、数字 ID 或完整 GID 智能查找订单详情,包括价格、地址、行项目、退款与折扣码等。
update-order
更新订单的标签、邮箱、备注、电话、采购单号、自定义属性、元字段及发货地址。
get-customer-orders
获取指定客户的订单列表,支持分页与排序。
order-cancel
取消订单,可选择退款、补库存及是否通知客户;此操作不可撤销。
order-close-open
关闭或重新打开订单。
order-mark-as-paid
将订单标记为已付款(用于手动/线下付款场景)。
create-fulfillment
创建发货记录并可附带物流追踪信息。
refund-create
创建全额或部分退款,可选择是否补库存。
create-draft-order
创建草稿订单,适用于电话/聊天销售、开票或批发场景。
complete-draft-order
将草稿订单转为正式订单。
get-metafields
获取任意 Shopify 资源(产品、订单、客户等)的元字段。
set-metafields
为任意资源批量创建或更新最多 25 个元字段。
delete-metafields
删除任意资源上的元字段。
inventory-set-quantities
设置某个库存地点的绝对库存数量(可用或在手)。
manage-tags
为任意可打标签的资源(订单、产品、客户、草稿订单、文章等)添加或移除标签。

安装接入

  1. 确保本地已安装 Node.js 18 及以上版本。2. 在 Shopify 后台创建自定义应用:2026 年 1 月起新建应用需在 Dev Dashboard 中创建,并配置 read/write_products、read/write_customers、read/write_orders 等 Admin API 权限范围,安装应用后获取 Client ID 与 Client Secret;若使用旧版应用,可直接使用已有的 shpat_ 静态访问令牌。3. 在 Claude Desktop 配置文件(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json;Windows: %APPDATA%/Claude/claude_desktop_config.json)中按 README 示例添加 mcpServers 配置,或使用 claude mcp add shopify -- npx shopify-mcp ... 命令添加到 Claude Code;也可用 .env 文件配置环境变量后运行 npx shopify-mcp,或全局安装 npm install -g shopify-mcp 后直接运行。4. 可选:通过 --apiVersion 或 SHOPIFY_API_VERSION 指定 Shopify API 版本(默认为 2026-01)。
claude_desktop_config.json
{"mcpServers":{"shopify":{"command":"npx","args":["shopify-mcp","--clientId","<YOUR_CLIENT_ID>","--clientSecret","<YOUR_CLIENT_SECRET>","--domain","<YOUR_SHOP>.myshopify.com"]}}}

选型与风险

适合谁

  • 需要通过对话方式管理店铺数据的 Shopify 商家或客服人员
  • 在 Claude Desktop、Claude Code 或 Cursor 等 MCP 主机中构建电商运营助手的开发者
  • 熟悉在 Shopify 后台创建自定义应用并获取 API 凭据的技术用户

不适合谁

  • 没有 Shopify 自定义应用或无法获取 Client ID/Secret、访问令牌的用户
  • 需要面向顾客的店面/结账功能的场景(该工具仅面向 Admin API 后台管理)
  • 需要严格审计追踪或权限最小化控制、超出 README 所列 API 权限范围的合规场景

所需权限

  • Shopify Admin API 权限范围:read_products / write_products
  • read_customers / write_customers
  • read_orders / write_orders
  • 通过 OAuth Client ID/Secret 或静态 shpat_ 访问令牌获得对应店铺的完整读写权限

风险与副作用

  • order-cancel 等操作在 README 中被明确标注为不可撤销
  • 工具具备对客户个人信息(姓名、邮箱、电话、地址)的完整读写权限,存在数据泄露或误操作风险
  • Client Secret 或静态访问令牌若以命令行参数或环境变量明文形式配置,存在凭据泄露风险
  • 该项目为个人维护的第三方开源工具,非 Shopify 官方发布,需自行评估代码安全性

常见排障

  1. 查看 Claude Desktop 的 MCP 日志:`tail -n 20 -f ~/Library/Logs/Claude/mcp*.log`
  2. 确认安装并使用的包名为 `shopify-mcp`,而非同名易混淆的 `shopify-mcp-server`
  3. 确认 Node.js 版本不低于 18
  4. 检查 Shopify 自定义应用是否已配置并安装了所需的 Admin API 权限范围
  5. 确认所用认证方式(Client ID/Secret 或静态访问令牌)与配置文件中提供的参数一致
  6. 确认 --domain 参数格式为 `<store>.myshopify.com`

使用场景

通过自然语言查询、创建或更新产品目录
客服代表快速查找客户信息与历史订单
处理订单取消、退款与发货
批量调整库存数量或商品/客户标签
为电话、聊天或批发销售创建并完成草稿订单

支持客户端

Claude Desktop完整支持
Claude Code完整支持
Cursor部分支持