WooCommerce MCP Server

WooCommerce store data management via WordPress REST API for AI workflows.

Data last scanned today · Reviewed yesterday

2921 dangerous tools119 tools96JavaScriptMIT

Overview

This MCP server provides a bridge between AI models and WooCommerce stores, utilizing the JSON-RPC 2.0 protocol to interact with store data. It allows users to manage products, orders, customer information, shipping details, and tax configurations directly through the WordPress REST API.

Our verdict

With a high-risk security score of 14/100, this tool should be used with extreme caution. It lacks any authentication method beyond static configuration and fails to implement read-only mode, meaning every installation is granted full write access to your store. Given that it is maintained by a small community group rather than the official WooCommerce vendor and has not been editorially reviewed, it is best suited for isolated sandbox environments rather than live production stores.

  • Supports comprehensive management of products, orders, and taxes
  • Uses only one direct dependency to minimize supply-chain risk
  • Includes documentation for WordPress and WooCommerce API methods
  • Compatible across Windows, macOS, and Linux environments
  • No authentication layer for the MCP server itself
  • Full write access granted to every user by default
  • Not maintained by the official WooCommerce vendor
  • Last code commit was over eight months ago

Setup

Claude Desktop
{
  "mcpServers": {
    "woocommerce-mcp-server": {
      "args": [
        "-y",
        "woocommerce-mcp-server"
      ],
      "command": "npx"
    }
  }
}

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop. Some servers require API keys or tokens as environment variables — check the project's README and add an "env" object if needed.

  • No read-only mode — running this grants full read/write access.
  • No built-in authentication — anyone with access to this config can invoke every tool it exposes.

Tools

ToolDescriptionRisk
create_postCreate a new WordPress postmedium
get_postsRetrieve WordPress postslow
update_postUpdate an existing WordPress postmedium
get_post_metaGet post metadatalow
update_post_metaUpdate post metadatamedium
create_post_metaCreate post metadatamedium
delete_post_metaDelete post metadatahigh
get_productsRetrieve a list of productslow
get_productGet a single product by IDlow
create_productCreate a new productmedium
update_productUpdate an existing productmedium
delete_productDelete a producthigh
get_product_metaGet product metadatalow
create_product_metaCreate/update product metadatamedium
update_product_metaUpdate product metadata (alias for create)medium
delete_product_metaDelete product metadatahigh
get_product_categoriesRetrieve product categorieslow
get_product_categoryGet a single product categorylow
create_product_categoryCreate a new product categorymedium
update_product_categoryUpdate a product categorymedium
delete_product_categoryDelete a product categoryhigh
get_product_tagsRetrieve product tagslow
get_product_tagGet a single product taglow
create_product_tagCreate a new product tagmedium
update_product_tagUpdate a product tagmedium
delete_product_tagDelete a product taghigh
get_product_attributesRetrieve product attributeslow
get_product_attributeGet a single product attributelow
create_product_attributeCreate a new product attributemedium
update_product_attributeUpdate a product attributemedium
delete_product_attributeDelete a product attributehigh
get_attribute_termsRetrieve attribute termslow
get_attribute_termGet a single attribute termlow
create_attribute_termCreate a new attribute termmedium
update_attribute_termUpdate an attribute termmedium
delete_attribute_termDelete an attribute termhigh
get_product_variationsRetrieve product variationslow
get_product_variationGet a single product variationlow
create_product_variationCreate a new product variationmedium
update_product_variationUpdate a product variationmedium
delete_product_variationDelete a product variationhigh
get_product_reviewsRetrieve product reviewslow
get_product_reviewGet a single product reviewlow
create_product_reviewCreate a new product reviewmedium
update_product_reviewUpdate a product reviewmedium
delete_product_reviewDelete a product reviewhigh
get_ordersRetrieve a list of orderslow
get_orderGet a single order by IDlow
create_orderCreate a new ordermedium
update_orderUpdate an existing ordermedium
delete_orderDelete an orderhigh
get_order_metaGet order metadatalow
create_order_metaCreate/update order metadatamedium
update_order_metaUpdate order metadata (alias for create)medium
delete_order_metaDelete order metadatahigh
get_order_notesRetrieve order noteslow
get_order_noteGet a single order notelow
create_order_noteCreate a new order notemedium
delete_order_noteDelete an order notehigh
get_order_refundsRetrieve order refundslow
get_order_refundGet a single order refundlow
create_order_refundCreate a new order refundmedium
delete_order_refundDelete an order refundhigh
get_customersRetrieve a list of customerslow
get_customerGet a single customer by IDlow
create_customerCreate a new customermedium
update_customerUpdate an existing customermedium
delete_customerDelete a customerhigh
get_customer_metaGet customer metadatalow
create_customer_metaCreate/update customer metadatamedium
update_customer_metaUpdate customer metadata (alias for create)medium
delete_customer_metaDelete customer metadatahigh
get_shipping_zonesRetrieve shipping zoneslow
get_shipping_zoneGet a single shipping zonelow
create_shipping_zoneCreate a new shipping zonemedium
update_shipping_zoneUpdate a shipping zonemedium
delete_shipping_zoneDelete a shipping zonehigh
get_shipping_methodsRetrieve shipping methodslow
get_shipping_zone_methodsGet shipping methods for a zonelow
create_shipping_zone_methodCreate a new shipping method for a zonemedium
update_shipping_zone_methodUpdate a shipping method for a zonemedium
delete_shipping_zone_methodDelete a shipping method from a zonehigh
get_shipping_zone_locationsGet locations for a shipping zonelow
update_shipping_zone_locationsUpdate locations for a shipping zonemedium
get_tax_classesRetrieve tax classeslow
create_tax_classCreate a new tax classmedium
delete_tax_classDelete a tax classhigh
get_tax_ratesRetrieve tax rateslow
get_tax_rateGet a single tax ratelow
create_tax_rateCreate a new tax ratemedium
update_tax_rateUpdate a tax ratemedium
delete_tax_rateDelete a tax ratehigh
get_couponsRetrieve couponslow
get_couponGet a single couponlow
create_couponCreate a new couponmedium
update_couponUpdate a couponmedium
delete_couponDelete a couponhigh
get_payment_gatewaysRetrieve payment gatewayslow
get_payment_gatewayGet a single payment gatewaylow
update_payment_gatewayUpdate a payment gatewaymedium
get_sales_reportRetrieve sales reportslow
get_products_reportRetrieve products reportslow
get_orders_reportRetrieve orders reportslow
get_categories_reportRetrieve categories reportslow
get_customers_reportRetrieve customers reportslow
get_stock_reportRetrieve stock reportslow
get_coupons_reportRetrieve coupons reportslow
get_taxes_reportRetrieve taxes reportslow
get_settingsRetrieve all settingslow
get_setting_optionsRetrieve options for a settinglow
update_setting_optionUpdate a setting optionmedium
get_system_statusRetrieve system statuslow
get_system_status_toolsRetrieve system status toolslow
run_system_status_toolRun a system status toolhigh
get_dataRetrieve store datalow
get_continentsRetrieve continents datalow
get_countriesRetrieve countries datalow
get_currenciesRetrieve currencies datalow
get_current_currencyGet the current currencylow

Compatibility

ClientLocalDockerRemoteRead-only
ChatGPT
Claude Desktop
Cursor
VS Code
Windsurf

Frequently asked questions

What operating systems are supported?

This server is compatible with Windows, macOS, and Linux.

Are there different authentication requirements for WooCommerce and WordPress methods?

Yes. WooCommerce API access requires consumer keys generated in your WordPress dashboard, while WordPress-specific methods require a valid username and password for basic authentication.

Can I provide credentials without using environment variables?

Yes, you can provide the required credentials directly in the request parameters instead of using the configuration file.

What setup is required to perform WordPress content management tasks?

You must provide your WordPress username and password, and ensure that the WordPress REST API is enabled on your site.

Alternatives

Badge

WooCommerce MCP Server security score, rated on RepoAI

Maintain this server? Add the live badge to your README.