返回市场
Shopify MCP

Shopify MCP

作者:GeLi2001104 星标更新:2025-08-22

项目介绍

Shopify MCP Server

(如果你喜欢,请给个星!)

Shopify API 的 MCP 服务器,通过 GraphQL API 实现与商店数据的交互。此服务器提供了管理产品、客户、订单等功能的工具。

📦 包名:shopify-mcp
🚀 命令:shopify-mcp(不是 shopify-mcp-server

<a href="https://glama.ai/mcp/servers/@GeLi2001/shopify-mcp"> <img width="380" height="200" src="https://gips2.baidu.com/it/u=940055840,23935533&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Shopify MCP 服务器" /> </a>

功能

  • 产品管理:搜索并获取产品信息
  • 客户管理:加载客户数据并管理客户标签
  • 订单管理:高级订单查询和过滤
  • GraphQL 集成:直接集成 Shopify 的 GraphQL 管理 API
  • 全面错误处理:API 和认证问题的清晰错误消息

先决条件

  1. Node.js(版本 16 或更高)
  2. Shopify 自定义应用访问令牌(请参阅下面的设置说明)

设置

Shopify 访问令牌

要使用此 MCP 服务器,您需要在您的 Shopify 商店中创建一个自定义应用:

  1. 在您的 Shopify 管理后台,转到 设置 > 应用和销售渠道
  2. 点击 开发应用(您可能需要先启用开发者预览)
  3. 点击 创建应用
  4. 为您的应用设置名称(例如,“Shopify MCP 服务器”)
  5. 点击 配置管理 API 范围
  6. 选择以下范围:
    • read_products, write_products
    • read_customers, write_customers
    • read_orders, write_orders
  7. 点击 保存
  8. 点击 安装应用
  9. 点击 安装 以授予该应用访问您的商店数据的权限
  10. 安装后,您将看到您的 管理 API 访问令牌
  11. 复制此令牌——您将在配置时需要它

与 Claude Desktop 一起使用

将以下内容添加到您的 claude_desktop_config.json 中:

{
  "mcpServers": {
    "shopify": {
      "command": "npx",
      "args": [
        "shopify-mcp",
        "--accessToken",
        "<YOUR_ACCESS_TOKEN>",
        "--domain",
        "<YOUR_SHOP>.myshopify.com"
      ]
    }
  }
}

Claude Desktop 配置文件的位置:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json

可选:使用环境变量本地运行

如果您更愿意使用环境变量而不是命令行参数:

  1. 创建一个包含您的 Shopify 凭据的 .env 文件:

    SHOPIFY_ACCESS_TOKEN=your_access_token
    MYSHOPIFY_DOMAIN=your-store.myshopify.com
    
  2. 使用 npx 运行服务器:

    npx shopify-mcp
    

直接安装(可选)

如果您想全局安装该包:

npm install -g shopify-mcp

然后运行它:

shopify-mcp --accessToken=<YOUR_ACCESS_TOKEN> --domain=<YOUR_SHOP>.myshopify.com

⚠️ 重要提示: 如果您在使用命令行参数时遇到“需要 SHOPIFY_ACCESS_TOKEN 环境变量”的错误,请确保您使用的是 shopify-mcp,而不是 shopify-mcp-server

可用工具

产品管理

  1. get-products

    • 获取所有产品或按标题搜索
    • 输入:
      • searchTitle(可选字符串):按标题筛选产品
      • limit(数字):返回的产品最大数量
  2. get-product-by-id

    • 按 ID 获取特定产品
    • 输入:
      • productId(字符串):要检索的产品的 ID
  3. createProduct

    • 在商店中创建新产品
    • 输入:
      • title(字符串):产品的标题
      • descriptionHtml(字符串):产品的描述
      • vendor(字符串):产品的供应商
      • productType(字符串):产品的类型
      • tags(字符串):产品的标签
      • status(字符串):产品的状态 "ACTIVE", "DRAFT", "ARCHIVED"。默认 "DRAFT"

客户管理

  1. get-customers

    • 获取客户或按姓名/电子邮件搜索
    • 输入:
      • searchQuery(可选字符串):按姓名或电子邮件筛选客户
      • limit(可选数字,默认值:10):返回的最大客户数量
  2. update-customer

    • 更新客户的资料
    • 输入:
      • id(字符串,必需):Shopify 客户 ID(仅数字 ID,如 "6276879810626")
      • firstName(字符串,可选):客户的名
      • lastName(字符串,可选):客户的姓
      • email(字符串,可选):客户的电子邮件地址
      • phone(字符串,可选):客户的电话号码
      • tags(字符串数组,可选):应用于客户的标签
      • note(字符串,可选):关于客户的备注
      • taxExempt(布尔值,可选):客户是否免税
      • metafields(对象数组,可选):用于存储额外数据的客户元字段
  3. get-customer-orders

    • 获取特定客户的订单
    • 输入:
      • customerId(字符串,必需):Shopify 客户 ID(仅数字 ID,如 "6276879810626")
      • limit(可选数字,默认值:10):返回的最大订单数量

订单管理

  1. get-orders

    • 获取订单,可选过滤
    • 输入:
      • status(可选字符串):按订单状态筛选
      • limit(可选数字,默认值:10):返回的最大订单数量
  2. get-order-by-id

    • 按 ID 获取特定订单
    • 输入:
      • orderId(字符串,必需):完整的 Shopify 订单 ID(例如,"gid://shopify/Order/6090960994370")
  3. update-order

    • 使用新信息更新现有订单
    • 输入:
      • id(字符串,必需):Shopify 订单 ID
      • tags(字符串数组,可选):订单的新标签
      • email(字符串,可选):更新客户电子邮件
      • note(字符串,可选):订单备注
      • customAttributes(对象数组,可选):订单的自定义属性
      • metafields(对象数组,可选):订单元字段
      • shippingAddress(对象,可选):发货地址信息

调试

如果遇到问题,请检查 Claude Desktop 的 MCP 日志:

tail -n 20 -f ~/Library/Logs/Claude/mcp*.log

许可证

MIT