npm package: @hegetiby/woocommerce-mcp
Description: MCP server for WooCommerce — full store management: products, orders, customers, coupons, reports, analytics, settings, shipping, tax, webhooks
Author: hegetiby
Latest version: 1.0.1

# @hegetiby/woocommerce-mcp

Full WooCommerce store management via MCP — **47 tools** covering products, orders, customers, coupons, reports, analytics, settings, shipping, tax, webhooks, and WordPress media.

Built for the [Model Context Protocol](https://modelcontextprotocol.io), works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client.

## Why this one?

Other WooCommerce MCP servers give you 5-6 basic tools. This one gives you **47** - the full WooCommerce REST API v3 surface, including batch operations, analytics, refunds, webhooks, and system administration.

## Quick Start

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "woocommerce": {
      "command": "npx",
      "args": ["-y", "@hegetiby/woocommerce-mcp"],
      "env": {
        "WOOCOMMERCE_URL": "https://your-store.com",
        "WOOCOMMERCE_KEY": "ck_your_consumer_key",
        "WOOCOMMERCE_SECRET": "cs_your_consumer_secret"
      }
    }
  }
}
```

Generate API keys in WordPress: **WooCommerce > Settings > Advanced > REST API > Add Key** (Read/Write).

## All 47 Tools

**Products (12):** wc_products_list, wc_product_get, wc_product_create, wc_product_update, wc_product_delete, wc_products_batch, wc_variations_list, wc_variation_create, wc_variation_update, wc_categories_list, wc_category_create, wc_tags_list

**Orders (8):** wc_orders_list, wc_order_get, wc_order_create, wc_order_update, wc_order_delete, wc_order_notes_list, wc_order_note_create, wc_refund_create

**Customers (3):** wc_customers_list, wc_customer_get, wc_customer_create

**Coupons (3):** wc_coupons_list, wc_coupon_create, wc_coupon_delete

**Reports & Analytics (7):** wc_reports_sales, wc_reports_top_sellers, wc_reports_orders_totals, wc_reports_products_totals, wc_reports_customers_totals, wc_analytics_revenue, wc_analytics_products

**Settings (3):** wc_settings_list_groups, wc_settings_get_group, wc_setting_update

**Shipping & Tax (4):** wc_shipping_zones_list, wc_shipping_zone_methods, wc_tax_rates_list, wc_tax_classes_list

**Webhooks (2):** wc_webhooks_list, wc_webhook_create

**System (3):** wc_system_status, wc_system_status_tools, wc_system_status_tool_run

**WordPress (2):** wp_posts_list, wp_media_upload

## Features

- **Dual auth**: HTTPS uses Basic Auth, HTTP uses OAuth 1.0a HMAC-SHA256 - automatic
- **Pagination**: Full support with x-wp-total / x-wp-totalpages headers
- **Batch operations**: Create/update/delete up to 100 products at once
- wc-analytics API for revenue and product stats
- WordPress media sideloading from URL
- Dual transport: stdio for local, SSE for remote/hosted

## Example Conversations

- "Which products are out of stock?"
- "Show me orders from last week that are still processing"
- "Create a 20% coupon WELCOME20, limit 100 uses, expires end of month"
- "What were my top 10 sellers this month?"
- "Set all products in Summer category to 30% off"

## Environment Variables

| Variable | Required | Default |
|----------|:---:|---------|
| WOOCOMMERCE_URL | Yes | — |
| WOOCOMMERCE_KEY | Yes | — |
| WOOCOMMERCE_SECRET | Yes | — |
| MCP_TRANSPORT | No | stdio |
| MCP_PORT | No | 3801 |

## SSE Mode

```bash
WOOCOMMERCE_URL=https://your-store.com WOOCOMMERCE_KEY=ck_xxx WOOCOMMERCE_SECRET=cs_xxx MCP_TRANSPORT=sse MCP_PORT=3801 npx @hegetiby/woocommerce-mcp
```

## License

MIT