I built an MCP server for Shopify and Stripe write operations — the gap nobody filled
Source: Dev.to
What it does
npx mcp-ecom-hub
A fully typed MCP server that covers what the others don’t.
Shopify — write ops
shopify_update_product— update title, price, inventoryshopify_bulk_update_prices— update multiple variants at onceshopify_fulfill_order— mark orders as fulfilledshopify_cancel_order— cancel + refund in one callshopify_create_discount— generate discount codes
Shopify — read ops
shopify_get_orders— with filters (status, date, customer)shopify_get_products— full product + variant detailsshopify_get_analytics— revenue, AOV, conversion rateshopify_get_customers— customer list + LTV
Stripe
stripe_get_revenue— MRR, ARR, breakdown by periodstripe_list_subscriptions— active subscriptionsstripe_cancel_subscription— with proration handlingstripe_create_coupon— discount codesstripe_get_payouts— payout historystripe_refund_payment— issue refunds
Multi‑store
hub_list_stores— all configured storeshub_get_overview— cross‑store revenue summary
The gap it fills
| Feature | mcp‑ecom‑hub | Shopify MCP (official) | pipeboard |
|---|---|---|---|
| Shopify write ops | ✅ | ❌ | ❌ |
| Bulk price update | ✅ | ❌ | ❌ |
| Stripe integrated | ✅ | ❌ | ❌ |
| Subscription mgmt | ✅ | ❌ | ❌ |
| Multi‑store | ✅ | ❌ | ❌ |
| Self‑hosted | ✅ | ❌ | ❌ |
| Open source | ✅ | ✅ | ❌ |
Setup
{
"mcpServers": {
"ecom-hub": {
"command": "npx",
"args": ["-y", "mcp-ecom-hub"],
"env": {
"MCP_ECOM_CONFIG": "/path/to/stores.json"
}
}
}
}
Config file (stores.json)
{
"stores": [
{
"id": "mystore",
"name": "My Store",
"shopify": {
"domain": "mystore.myshopify.com",
"accessToken": "shpat_xxx"
},
"stripe": {
"secretKey": "sk_live_xxx"
}
}
],
"defaultStore": "mystore"
}
Safety first
Destructive operations (cancel, refund) require explicit confirmation:
User: Cancel order #1234 and refund the customer
Agent: I'll cancel order #1234 ($89.00) and issue a full refund. Confirm? [yes/no]
User: yes
Agent: ✅ Order cancelled. Refund of $89.00 issued — arrives in 5‑10 days.
No accidental cancellations.
Multi‑store
Running an agency with multiple clients? One config, all stores:
User: Show me revenue across all stores this week
Agent:
- Store A: €2,340 (12 orders, AOV €195)
- Store B: €890 (8 orders, AOV €111)
- Total: €3,230
Links
- GitHub: davideconte/mcp-ecom-hub
- npm: mcp-ecom-hub
Open source, MIT. Built for agencies managing multiple e‑commerce clients. PRs welcome — especially for WooCommerce support (next on the list).