A side-by-side look at the Medusa and Shopify MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Medusa for e-commerce work as a local process; choose Shopify MCP for e-commerce as a local process. You can also run both side by side in one mcpServers block.
MEDUSA_READ_ONLY, MEDUSA_RAW_API, MEDUSA_TOOLSETS, REPORT_TIMEZONE, MEDUSA_CONFIRM_DESTRUCTIVE.get_store_info, list_orders, list_customers.SHOPIFY_STORE, SHOPIFY_ACCESS_TOKEN.list_products, get_product, create_product.Rows where the two servers differ are marked.
| Spec | M Medusa | |
|---|---|---|
| Category | E-Commerce | E-Commerce |
| Quality signal | 57/100 · Good | 52/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | OAuth 2.0 | Not declared |
| Pricing | Free | Not declared |
| Required env vars | MEDUSA_READ_ONLYMEDUSA_RAW_APIMEDUSA_TOOLSETSREPORT_TIMEZONEMEDUSA_CONFIRM_DESTRUCTIVE | SHOPIFY_STORESHOPIFY_ACCESS_TOKEN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 2 |
| Directory activity | 0 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 12 | 56 |
| Full listing | View Medusa | View Shopify MCP |
get_store_inforegions and currencies, sales channels, stock locations, shipping options and profiles, return and refund reasonslist_ordersorders by full-text, date range, customer or status; full detail by ID or order number (`1042`) with payments, refunds, discount codes and returnslist_customerscustomers (also by group or e-mail), order history, total spentlist_customer_groupscustomer groupslist_productsproducts by status, collection, category or tag; variants, options, prices, images, inventory items (by ID or handle)list_catalogcategories (tree), collections, tags, product typeslist_inventorystock per location, `low_stock_threshold` to find what's running outlist_promotionsdiscount codes with conditions, usage and validity; sale and customer-group price listssales_reportrevenue, net revenue after refunds, AOV, units, customers – **compared with the previous period or last year**, day/week/month series, top products and variants, countries, discount codes, sales channels · *interactive dashboard*customer_reportnew vs returning customers, repeat purchase rate, top customers, lapsed customers worth winning backinventory_forecastsales velocity vs stock: days of cover, out-of-stock / reorder-now / reorder-soon, suggested order quantities, slow movers · *interactive restock planner*medusa_requestany Admin API endpoint (`GET`, `POST`, `DELETE` under `/admin/`) for things without a dedicated tool – reservations, exchanges, tax rates… Read-only mode allows `GET` only; writes to `api-keys`, `users` and `invites` are always blocked. Turn it off with `MEDUSA_RAW_API=false`.list_productsPaginated product search with Shopify query syntaxget_productFetch one product with variants, images, mediacreate_productCreate a product (default DRAFT); optionally attach imagesupdate_productUpdate title, description, tags, status, etc.upload_product_imageAttach a public image URL to an existing productlist_ordersList orders, newest first, with query filtersget_orderFetch one order with line itemsset_inventory_quantitySet absolute on-hand inventory at a locationlist_locationsList store locations (for inventory ops)list_customersList customers with query filtersset_metafieldUpsert a metafield on any `HasMetafields` resource (product, variant, collection, customer, order, shop, etc.)list_metafieldsList metafields for a resource, optionally filtered by namespacePaste 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": {
"medusa": {
"command": "npx",
"args": [
"-y",
"medusa-mcp"
],
"env": {
"MEDUSA_READ_ONLY": "YOUR_MEDUSA_READ_ONLY_HERE",
"MEDUSA_RAW_API": "YOUR_MEDUSA_RAW_API_HERE",
"MEDUSA_TOOLSETS": "YOUR_MEDUSA_TOOLSETS_HERE",
"REPORT_TIMEZONE": "YOUR_REPORT_TIMEZONE_HERE",
"MEDUSA_CONFIRM_DESTRUCTIVE": "YOUR_MEDUSA_CONFIRM_DESTRUCTIVE_HERE"
}
}
}
}
{
"mcpServers": {
"shopify-mcp": {
"command": "npx",
"args": [
"-y",
"@miller-joe/shopify-mcp"
],
"env": {
"SHOPIFY_STORE": "YOUR_SHOPIFY_STORE_HERE",
"SHOPIFY_ACCESS_TOKEN": "YOUR_SHOPIFY_ACCESS_TOKEN_HERE"
}
}
}
}