A side-by-side look at the Retailcrm MCP and Woocommerce MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Retailcrm MCP for e-commerce work as a local process; choose Woocommerce MCP for e-commerce as a local process. You can also run both side by side in one mcpServers block.
list_orders, get_order, create_order.WP_URL, WC_CONSUMER_KEY, WC_CONSUMER_SECRET.list_products, get_product, list_orders.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | E-Commerce | E-Commerce |
| Quality signal | 59/100 · Good | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | API key required |
| Pricing | Not declared | Free |
| Required env vars | None listed | WP_URLWC_CONSUMER_KEYWC_CONSUMER_SECRET |
| Verified owner | Community listing | Community listing |
| GitHub stars | 1 | 2 |
| Directory activity | 1 views 0 installs 0 upvotes | 5 views 0 installs 0 upvotes |
| Tools | 39 | 5 |
| Full listing | View Retailcrm MCP | View Woocommerce MCP |
list_ordersList orders with filters by status, customer name, number, and created-date range. Returns (summary): pagination + array of {id, number, status, total, customer, phone, itemCount, createdAt}. Use detail:'full' for line items/delivery/payments, raw:true for the untouched payload.get_orderGet a single order by RetailCRM id or externalId. Returns a shaped order; detail:'full' adds items, delivery, payments, comments.create_orderCreate an order with line items and delivery. Link an existing customer via customer_id/customer_external_id, or pass first_name (+phone/email) to create one inline. Returns {success, id, order?}.update_orderUpdate an order (status, customer, delivery, comments). Only the fields you pass are sent. Returns {success}.orders_historyOrder change history incl. status transitions; supports incremental sync via filter_since_id and a date window. Returns {history[], pagination}.list_customersList/search customers by name, email, phone, created-date. Returns (summary): pagination + array of {id, name, email, phone, ordersCount, totalSpent}. detail:'full' adds address/externalId/all phones.get_customerGet a single customer by id or externalId. Returns a shaped customer; detail:'full' adds address and contact details.create_customerCreate a customer with name, contacts, address, optional externalId. Returns {success, id}.update_customerEdit an existing customer (name, email, phones, address) by id or externalId. Only the fields you pass are sent. Returns {success}.merge_customersMerge duplicate customers into a target; merged records are DELETED. Returns {success}.customers_historyCustomer field-change log for growth/churn signals and incremental sync. Returns {history[], pagination}.list_productsList catalog products with filters by name, active, group, price range. Returns pagination + array of {id, name, article, active, url, groups, offers}.list_productsList / search products (name, sku, price, stock, permalink)get_productFull details for one product by idlist_ordersRecent orders, newest first, optional status filtersales_reportSales totals for a period (week / month / last_month / year)search_postsSearch published blog posts (public WP REST API)Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"retailcrm-mcp": {
"command": "npx",
"args": [
"-y",
"@theyahia/retailcrm-mcp"
]
}
}
}
{
"mcpServers": {
"wppoland-woocommerce-mcp": {
"command": "npx",
"args": [
"-y",
"@wppoland/woocommerce-mcp"
],
"env": {
"WP_URL": "YOUR_WP_URL_HERE",
"WC_CONSUMER_KEY": "YOUR_WC_CONSUMER_KEY_HERE",
"WC_CONSUMER_SECRET": "YOUR_WC_CONSUMER_SECRET_HERE"
}
}
}
}