← 返回目录
S

Shopify MCP Server

社区
通过对话方式管理 Shopify 店铺的产品、客户与订单。
分类
其他 第 101 / 230
Stars
★ 236 热门
传输方式
stdio(本地进程)
运行环境
Node.js 18+
凭据
需要 API Key / 凭据
许可证
MIT
最近提交
⚠
工具数
31
56FMRS · C

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

最强项 · 文档质量 16/20 最弱项 · 可靠性 8/20

可靠性
8/20
安全与权限
9/20
维护活跃度
10/20
文档质量
16/20
安装易用性
13/20
查看各项评分依据
可靠性 8/20
仅提供 README,未附带源码、测试文件或 CI 工作流,无法验证 31 个工具的握手行为与声明参数是否与实际实现一致。README 对每个工具的输入/输出描述详尽且内部自洽,暗示实现较为成熟,但缺乏可复现的执行证据(无committed测试、无CI日志),按静态评审规则可靠性不得超过12分。因此给予中低分,反映“可能可行但未经证实”的状态。
安全与权限 9/20
凭证可通过命令行参数(--clientSecret/--accessToken)或.env文件传入,命令行参数存在被shell历史/进程列表泄露的常见风险;文档中示例均为占位符,未见真实密钥泄露。工具集包含多个不可逆操作(delete-product、delete-customer、order-cancel标注为Irreversible、refund-create、order-mark-as-paid、complete-draft-order),但这些操作依赖显式必填参数(如reason、restock),并非“默认无确认执行”,尚未构成红线级别的自动破坏性默认行为,不过服务器层面未见任何内置二次确认机制,权限边界(OAuth scopes)完全依赖用户自行配置,缺乏最小权限的强制约束说明,故不给满分。
维护活跃度 10/20
仓库使用MIT许可证、未归档、有235星和10个未关闭issue,显示项目处于活跃状态,但材料中未提供commit历史、发布版本、changelog或安全响应渠道等证据,无法判断维护节奏与治理规范,按“缺失证据即扣分”原则给予中等分数。
文档质量 16/20
README内容详实,涵盖两种认证方式(OAuth client credentials与静态token)、Claude Desktop/Claude Code配置示例、环境变量替代方案、31个工具的逐一参数说明、分页/排序/过滤语法、订单查询过滤参考表以及常见包名混淆的故障排查提示,层次较为丰富。但缺少API调用成本、速率限制、各工具所需具体OAuth scope的映射说明,以及错误码/失败场景的系统性说明,故未给满分。
安装易用性 13/20
设置步骤清晰:提供npx直接运行、全局安装、Claude Desktop JSON配置示例、Claude Code CLI命令及.env文件三种等效途径,认证选项覆盖新旧两种方式,复杂度对主流客户端用户较低。但根据静态评审规则,在没有可验证的执行证据(CI+测试覆盖关键路径)情况下,安装易用性不得超过15分,故在此上限内给出较高但非满分的分数。

静态评测 · 未实际运行收录于 2026-08-26

查看 FMRS 评分方法 →

选型与风险

能访问什么访问网络修改第三方账户数据

适合谁

  • 需要通过对话方式管理店铺数据的 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 官方发布,需自行评估代码安全性

安装接入

准备工作

运行环境:Node.js 18+

SHOPIFY_CLIENT_SECRET 可选密钥 Dev Dashboard 应用的 Client Secret,可改用 --clientSecret 参数;与 Client ID 在同一处获取,属于敏感凭据。
SHOPIFY_ACCESS_TOKEN 可选密钥 旧版自定义应用的静态 shpat_ 访问令牌,可改用 --accessToken 参数;在 Shopify 自定义应用的 API 凭据页获取。
其他可选配置项(3 个)
SHOPIFY_CLIENT_ID 可选 Dev Dashboard 应用的 Client ID,可改用 --clientId 命令行参数;在 Shopify 后台 Settings > Apps and sales channels 中创建应用后获取。
MYSHOPIFY_DOMAIN 可选 你的店铺域名(如 your-store.myshopify.com),可改用 --domain 参数。
SHOPIFY_API_VERSION 可选 可选的 Shopify API 版本号,默认 2026-01,也可通过 --apiVersion 指定。
  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"]}}}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "shopify": {
      "command": "npx",
      "args": [
        "shopify-mcp",
        "--clientId",
        "<YOUR_CLIENT_ID>",
        "--clientSecret",
        "<YOUR_CLIENT_SECRET>",
        "--domain",
        "<YOUR_SHOP>.myshopify.com"
      ]
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add shopify -- npx shopify-mcp --clientId '<YOUR_CLIENT_ID>' --clientSecret '<YOUR_CLIENT_SECRET>' --domain '<YOUR_SHOP>.myshopify.com'

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

按照 npx 配置将服务器添加到 Claude Desktop 或 Cursor,重启客户端后确认工具列表中出现 get-products 等工具;然后请求查询你的商品以验证 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`

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 搜索我店铺里带有 'sale' 标签的商品,列出前 10 个。
  • 找到订单 #77235 并标记为已付款。
  • 创建一个名为 Jane 的新客户,邮箱 [email protected],并给她打上 'vip' 标签。
  • 查看我最活跃的 5 个商品的 metafields。

工具能力 31

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 破坏性
从产品中删除一个或多个变体。
展开其余 23 个工具
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 写入
为任意可打标签的资源(订单、产品、客户、草稿订单、文章等)添加或移除标签。

使用场景

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

支持客户端

Claude Desktop
Claude Code
Cursor部分支持

依据项目文档列出,未经本站实测。

详细介绍

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 官方产品。

同类可选方案

BioMCP 75 · B

统一的命令行语法,接入约30个可信生物医学数据源。

★ 659 · 工具数 11 与当前对比 →

源版本 c90faaf43402 数据同步于 2026-10-19 查看 FMRS 评分方法