mcpField
W
WooCommerce MCP Server

WooCommerce MCP Server

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

关于 WooCommerce MCP Server

WooCommerce MCP Server 让 AI 助手访问 WooCommerce 商店的订单数据,支持按状态筛选近期订单,并按 ID 获取订单详情。

主要功能

  1. 01获取近期订单
  2. 02按状态筛选订单
  3. 03按 ID 获取订单

适用场景

  1. 01查看商店近期订单
  2. 02查找特定状态的订单
  3. 03获取已知订单的详情

MCP 相关

向支持 MCP 的 AI 助手提供 WooCommerce 订单查询工具,并使用配置的 REST API 凭据。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

WooCommerce MCP 服务

用于将 WooCommerce 与 Claude 及其他 AI 助手集成的模型上下文协议(MCP)服务。

概述

此服务为 AI 助手提供与 WooCommerce 商店交互的工具,使其能够:

  • 获取近期订单,并可选择筛选条件
  • 根据 ID 获取特定订单的详细信息

此服务实现了模型上下文协议规范,因此兼容 Claude for Desktop 等支持 MCP 的 AI 助手。

前提条件

  • Node.js v18 或更高版本
  • 可访问 REST API 的 WooCommerce 商店
  • WooCommerce API 凭据(消费者密钥和密钥)

安装

  1. 克隆此代码库:
git clone https://github.com/techspawn/woocommerce-mcp-server.git
cd woocommerce-mcp-server
  1. 安装依赖项:
npm install

配置

你需要配置 WooCommerce API 凭据。可以通过以下方式进行配置:

  1. 运行服务时设置环境变量:
WOOCOMMERCE_URL=https://your-store.com \
WOOCOMMERCE_CONSUMER_KEY=your-consumer-key \
WOOCOMMERCE_CONSUMER_SECRET=your-consumer-secret \
node index.js
  1. 或者编辑 index.js 文件中的默认值:
const woocommerceConfig = {
  url: process.env.WOOCOMMERCE_URL || 'https://your-store.com',
  consumerKey: process.env.WOOCOMMERCE_CONSUMER_KEY || 'your-consumer-key',
  consumerSecret: process.env.WOOCOMMERCE_CONSUMER_SECRET || 'your-consumer-secret',
  version: 'wc/v3'
};

运行服务

直接运行服务:

node index.js

或者使用 npm 脚本:

npm start

与 Claude for Desktop 集成

要将此服务连接到 Claude for Desktop:

  1. 确保已安装 Claude for Desktop

  2. 打开位于以下路径的 Claude Desktop 配置文件:

    • Windows:%USERPROFILE%\AppData\Roaming\Claude\claude_desktop_config.json
    • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
    • Linux:~/.config/Claude/claude_desktop_config.json
  3. 添加 WooCommerce MCP 服务配置(如果文件不存在,请创建该文件):

{
  "mcpServers": {
    "woocommerce": {
      "command": "node",
      "args": [
        "/ABSOLUTE/PATH/TO/woocommerce-mcp-server/index.js"
      ],
      "env": {
        "WOOCOMMERCE_URL": "https://your-store.com",
        "WOOCOMMERCE_CONSUMER_KEY": "your-consumer-key",
        "WOOCOMMERCE_CONSUMER_SECRET": "your-consumer-secret"
      }
    }
  }
}
  1. 保存文件并重启 Claude for Desktop

可用工具

getRecentOrders

从 WooCommerce 商店获取近期订单列表。

参数:

  • status(可选):按状态筛选订单(例如,“processing”、“completed”、“on-hold”)
  • limit(可选,默认值:5):返回的订单数量
getOrderById

获取特定订单的详细信息。

参数:

  • id:要获取的订单 ID

使用 JavaScript 构建自己的 MCP 服务

本节介绍如何使用 JavaScript/Node.js 创建自己的 MCP 服务。

1. 设置新项目
mkdir my-mcp-server
cd my-mcp-server
npm init -y
2. 安装依赖项
npm install @modelcontextprotocol/sdk axios zod
3. 创建服务文件(index.js)

从基本结构开始:

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

// Initialize server
const server = new McpServer({
  name: "My MCP Service",
  version: "1.0.0",
});

// Define and register your tools
server.tool(
  "myToolName",
  {
    // Define parameters using Zod schemas
    param1: z.string().describe("Description of param1"),
    param2: z.number().optional().describe("Optional parameter")
  },
  async ({ param1, param2 }) => {
    // Tool implementation logic here
    const result = `Processed ${param1} with value ${param2 || 'none'}`;
    
    // Return result in the expected format
    return {
      content: [
        {
          type: "text",
          text: result
        }
      ]
    };
  }
);

// Connect the server
const transport = new StdioServerTransport();
await server.connect(transport);
4. 使 package.json 兼容 ES 模块
{
  "type": "module",
  "scripts": {
    "start": "node index.js"
  }
}
5. 定义工具

MCP 工具由三个部分定义:

  • 名称:工具的唯一标识符
  • 参数:输入参数的架构(使用 Zod)
  • 处理函数:处理输入并返回结果的异步函数

示例:

server.tool(
  "calculateTotal",
  {
    items: z.array(
      z.object({
        name: z.string(),
        price: z.number(),
        quantity: z.number().int().positive()
      })
    ).describe("Array of items to calculate total for")
  },
  async ({ items }) => {
    const total = items.reduce((sum, item) => sum + (item.price * item.quantity), 0);
    
    return {
      content: [
        {
          type: "text",
          text: `Total: $${total.toFixed(2)}`
        }
      ]
    };
  }
);
6. 本地测试

你可以使用 stdio 传输方式在本地测试 MCP 服务:

node index.js
7. 调试提示
  • 使用 console.error() 进行调试,不要使用会干扰 stdio 传输的 console.log()
  • 检查 Claude for Desktop 中的日志,查看是否有错误
  • 确保工具处理函数能够妥善处理异常

资源

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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