mcpField
S
Shopify MCP Server

Shopify MCP Server

本地服务
github.com/kimcchq商业与营销080 周前更新

关于 Shopify MCP Server

Shopify MCP Server 通过 Shopify GraphQL Admin API 提供店铺操作工具,面向开发者和店铺运营人员。功能涵盖商品、客户、订单、折扣、草稿订单、店铺信息及 Webhook。

主要功能

  1. 01搜索和获取商品
  2. 02浏览系列商品
  3. 03获取客户并管理标签
  4. 04筛选和查询订单
  5. 05创建折扣和草稿订单
  6. 06管理商品系列与 Webhook

适用场景

  1. 01按标题或系列查找商品
  2. 02通过筛选和排序查看订单
  3. 03为客户添加标签并获取客户记录
  4. 04创建折扣或完成草稿订单

MCP 相关

它向 MCP 客户端提供工具,通过 Shopify GraphQL Admin API 查询和管理店铺数据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"shopify-mcp-server-kimcchq": {
"command": "npx",
"args": [
"-y",
"shopify-mcp-server"
],
"env": {
"SHOPIFY_ACCESS_TOKEN": "<SHOPIFY_ACCESS_TOKEN>",
"MYSHOPIFY_DOMAIN": "<MYSHOPIFY_DOMAIN>"
}
}
}
}
启动命令npx -y shopify-mcp-server
需要配置的环境变量
SHOPIFY_ACCESS_TOKEN密钥
MYSHOPIFY_DOMAIN

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmshopify-mcp-server

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Shopify MCP 服务

许可证

用于 Shopify API 的 MCP 服务,可通过 GraphQL API 与商店数据交互。此服务提供用于管理产品、客户、订单等内容的工具。

目录

功能

  • 产品管理:搜索和获取产品信息
  • 客户管理:加载客户数据并管理客户标签
  • 订单管理:高级订单查询与筛选
  • GraphQL 集成:直接集成 Shopify 的 GraphQL Admin API
  • 全面的错误处理:针对 API 和身份验证问题提供清晰的错误消息

工具

  1. get-products

    • 获取所有产品或按标题搜索
    • 输入:
      • searchTitle(可选字符串):按标题筛选产品
      • limit(数字):要返回的产品数量上限
    • 返回:格式化的产品详情,包括标题、描述、handle 和变体
  2. get-products-by-collection

    • 获取指定系列中的产品
    • 输入:
      • collectionId(字符串):要获取产品的系列 ID
      • limit(可选数字,默认值:10):要返回的产品数量上限
    • 返回:指定系列中的格式化产品详情
  3. get-products-by-ids

    • 按产品 ID 获取产品
    • 输入:
      • productIds(字符串数组):要获取的产品 ID 数组
    • 返回:指定产品的格式化详情
  4. get-variants-by-ids

    • 按 ID 获取产品变体
    • 输入:
      • variantIds(字符串数组):要获取的变体 ID 数组
    • 返回:详细的变体信息,包括产品详情
  5. get-customers

    • 获取 Shopify 客户,支持分页
    • 输入:
      • limit(可选数字):要返回的客户数量上限
      • next(可选字符串):下一页游标
    • 返回:JSON 格式的客户数据
  6. tag-customer

    • 为客户添加标签
    • 输入:
      • customerId(字符串):要添加标签的客户 ID
      • tags(字符串数组):要添加到客户的标签
    • 返回:成功或失败消息
  7. get-orders

    • 使用高级筛选和排序获取订单
    • 输入:
      • first(可选数字):要返回的订单数量上限
      • after(可选字符串):下一页游标
      • query(可选字符串):使用查询语法筛选订单
      • sortKey(可选枚举):排序字段('PROCESSED_AT'、'TOTAL_PRICE'、'ID'、'CREATED_AT'、'UPDATED_AT'、'ORDER_NUMBER')
      • reverse(可选布尔值):是否反转排序顺序
    • 返回:格式化的订单详情
  8. get-order

    • 按 ID 获取单个订单
    • 输入:
      • orderId(字符串):要获取的订单 ID
    • 返回:详细的订单信息
  9. create-discount

    • 创建基本折扣码
    • 输入:
      • title(字符串):折扣标题
      • code(字符串):客户将输入的折扣码
      • valueType(枚举):折扣类型('percentage' 或 'fixed_amount')
      • value(数字):折扣值(百分比用小数表示,或填写固定金额)
      • startsAt(字符串):ISO 格式的开始日期
      • endsAt(可选字符串):ISO 格式的可选结束日期
      • appliesOncePerCustomer(布尔值):折扣是否只能由每位客户使用一次
    • 返回:已创建的折扣详情
  10. create-draft-order

    • 创建草稿订单
    • 输入:
      • lineItems(数组):包含 variantId 和 quantity 的商品数组
      • email(字符串):客户邮箱
      • shippingAddress(对象):收货地址详情
      • note(可选字符串):订单的可选备注
    • 返回:已创建的草稿订单详情
  11. complete-draft-order

    • 完成草稿订单
    • 输入:
      • draftOrderId(字符串):要完成的草稿订单 ID
      • variantId(字符串):草稿订单中变体的 ID
    • 返回:已完成的订单详情
  12. get-collections

    • 获取所有产品系列
    • 输入:
      • limit(可选数字,默认值:10):要返回的产品系列数量上限
      • name(可选字符串):按名称筛选产品系列
    • 返回:产品系列详情
  13. get-shop

    • 获取店铺详情
    • 输入:无
    • 返回:店铺基本信息
  14. get-shop-details

    • 获取包含配送国家/地区在内的扩展店铺详情
    • 输入:无
    • 返回:包含配送国家/地区在内的扩展店铺信息
  15. manage-webhook

    • 订阅、查找或取消订阅 Webhook
    • 输入:
      • action(枚举):要执行的操作('subscribe'、'find'、'unsubscribe')
      • callbackUrl(字符串):Webhook 回调 URL
      • topic(枚举):要订阅的 Webhook 主题
      • webhookId(可选字符串):Webhook ID(取消订阅时必填)
    • 返回:Webhook 详情或成功消息

入门指南

要开始使用 Shopify MCP Server,请按以下步骤操作:

  1. 克隆代码库:
git clone https://github.com/your-username/shopify-mcp-server.git
  1. 进入项目目录:
cd shopify-mcp-server
  1. 安装依赖:
npm install
  1. 使用你的 Shopify 凭据创建 .env 文件:
SHOPIFY_ACCESS_TOKEN=your_access_token
MYSHOPIFY_DOMAIN=your-store.myshopify.com
  1. 构建项目:
npm run build
  1. 运行服务:
npm start

使用场景

示例 1:管理商品

使用 Shopify MCP Server,你可以轻松管理商品。例如,你可以按标题搜索商品、获取商品详情并更新商品信息。

示例 2:处理订单

该服务提供高级订单查询和筛选功能。你可以根据各种条件获取订单,例如订单状态、日期范围和客户信息。

用户评价

“Shopify MCP Server 极大简化了我们的商品管理流程。它是一个强大的工具,为我们节省了大量时间。”——John Doe,店主

“我们很喜欢高级订单筛选选项。它让我们更轻松地查找特定订单并高效管理店铺。”——Jane Smith,电商经理

设置

Shopify 访问令牌

要使用此 MCP 服务,你需要在 Shopify 店铺中创建一个自定义应用:

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

注意:请妥善保管访问令牌。它可用于访问店铺数据,绝不可分享或提交到版本控制中。
关于如何创建 Shopify 应用的更多详情,请参阅此处。

在 Claude Desktop 中使用

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

{
  "mcpServers": {
    "shopify": {
      "command": "npx",
      "args": ["-y", "shopify-mcp-server"],
      "env": {
        "SHOPIFY_ACCESS_TOKEN": "<YOUR_ACCESS_TOKEN>",
        "MYSHOPIFY_DOMAIN": "<YOUR_SHOP>.myshopify.com"
      }
    }
  }
}

开发

  1. 克隆代码库
  2. 安装依赖:
npm install
  1. 创建 .env 文件:
SHOPIFY_ACCESS_TOKEN=your_access_token
MYSHOPIFY_DOMAIN=your-store.myshopify.com
  1. 构建项目:
npm run build
  1. 运行测试:
npm test
测试

项目使用 Jest 进行单元测试。测试按模块结构组织:

  • src/__tests__/utils/ - 工具函数的测试
  • src/__tests__/tools/ - 工具模块的测试
  • src/__tests__/ShopifyClient.test.ts - Shopify 客户端的测试

运行测试:

npm test

运行测试并生成覆盖率报告:

npm test -- --coverage

测试使用模拟对象,避免向 Shopify 发起真实 API 调用,确保测试运行快速、可靠,且无需实际凭据。

依赖项

  • @modelcontextprotocol/sdk - MCP 协议实现
  • graphql-request - Shopify API 的 GraphQL 客户端
  • zod - 运行时类型验证

贡献

欢迎贡献!请先阅读我们的贡献指南。

许可证

MIT

社区


使用 Model Context Protocol 构建,❤️ 倾情打造

感谢 Website (https://rezajafar.com/) 发起本项目

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。