{
  "data": {
    "a": {
      "slug": "shopify",
      "name": "Shopify API + MCP",
      "vendor": "Shopify",
      "vendorUrl": "https://www.shopify.com",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Hosted commerce platform for online stores.",
      "url": "https://www.anchorterminal.com/tools/shopify",
      "markdownUrl": "https://www.anchorterminal.com/tools/shopify.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/shopify.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/shopify.json",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@shopify/shopify-api"
        },
        {
          "registry": "npm",
          "name": "@shopify/admin-api-client"
        },
        {
          "registry": "npm",
          "name": "@shopify/dev-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "Admin API takes an access token in the X-Shopify-Access-Token header, issued to a custom app in the store or through OAuth for public apps, limited by access scopes such as read_products and write_orders. Storefront API uses a public or private storefront token. UCP MCP requests carry an agent profile, and Checkout MCP requests must be authenticated or signed. The Dev MCP server needs no auth.",
      "pricing": "paid",
      "pricingNotes": "Basic $39 a month or $29 billed yearly, Grow $105 or $79, Advanced $399 or $299, Plus from $2,300 a month on a 3-year term. Online card rates on Shopify Payments start at 2.9% + 30 cents on Basic, 2.7% on Grow and 2.5% on Advanced. Using a third-party payment provider adds 2% on Basic, 1% on Grow, 0.6% on Advanced and 0.2% on Plus. 3-day free trial, then a promotional $1 a month for 3 months. Development stores for building apps are free. US prices (https://www.shopify.com/pricing).",
      "priceSummary": "$39 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402. Agent checkout runs through UCP and Shopify checkout, paid with the buyer's normal payment methods.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 656603,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://shopify.dev/docs/api",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "mcp",
        "typescript",
        "webhooks",
        "enterprise"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75.2,
        "grade": "BB",
        "agentReady": true,
        "rank": 40,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 1,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 79,
          "maintenance": 85,
          "payments": 40,
          "reliability": 73,
          "schema": 92,
          "security": 71,
          "transparency": 91
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Typed GraphQL schemas with quarterly versions supported at least 12 months. Closed platform. You can't self-host or change checkout internals.",
        "strengths": [
          "Typed GraphQL schemas with quarterly versions supported at least 12 months",
          "UCP on every store, 13 tools for catalogue, cart, checkout and orders, with idempotency keys on checkout",
          "Granular read and write access scopes per app",
          "security.txt with a HackerOne programme, and a published subprocessor list",
          "Free development stores for testing agent flows without real payments"
        ],
        "weaknesses": [
          "Closed platform. You can't self-host or change checkout internals",
          "Agent surface changes often. Storefront MCP tools moved to UCP, and AI Toolkit skills were consolidated on 25 September 2026",
          "Checkout calls need signing or authentication, more setup than a plain key",
          "No Shopify server in the official MCP registry",
          "Third-party payment providers cost 0.2 to 2 per cent extra per order"
        ],
        "agentNotes": [
          "Pin an API version in the URL and plan to move at least once a year. Old versions fall forward to the oldest supported one",
          "Read the throttle status in each response's cost extension and back off one second when throttled",
          "Send an agent profile in `meta` on every UCP call, and an idempotency key on every checkout write",
          "Check `userErrors` on every mutation. A 200 response can still carry a failed write",
          "Add @shopify/dev-mcp while writing code so the agent checks queries against the current schema"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.6,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75.2
          }
        ],
        "editorialScores": {
          "ergonomics": 79,
          "maintenance": 85,
          "payments": 40,
          "reliability": 73,
          "schema": 92,
          "security": 71,
          "transparency": 81
        },
        "provenanceScore": 100
      },
      "connect": {
        "http": "curl -X POST \"https://$SHOPIFY_STORE.myshopify.com/admin/api/2026-07/graphql.json\" \\\n  -H \"X-Shopify-Access-Token: $SHOPIFY_ACCESS_TOKEN\" -H \"Content-Type: application/json\" \\\n  -d '{\"query\":\"{ products(first: 5) { edges { node { id title } } } }\"}'",
        "claudeCode": "claude mcp add --transport stdio shopify-dev-mcp -- npx -y @shopify/dev-mcp@latest",
        "config": {
          "mcpServers": {
            "shopify-dev-mcp": {
              "args": [
                "-y",
                "@shopify/dev-mcp@latest"
              ],
              "command": "npx"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/shopify"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Basic",
          "unit": "month",
          "usd": 39,
          "note": "$29 a month billed yearly"
        },
        {
          "item": "Grow",
          "unit": "month",
          "usd": 105,
          "note": "$79 a month billed yearly"
        },
        {
          "item": "Advanced",
          "unit": "month",
          "usd": 399,
          "note": "$299 a month billed yearly"
        },
        {
          "item": "Plus",
          "unit": "month",
          "usd": 2300,
          "note": "from, on a 3-year term"
        },
        {
          "item": "Online card rate on Basic",
          "unit": "pct",
          "usd": 2.9,
          "note": "plus 30 cents per transaction, Shopify Payments"
        },
        {
          "item": "Third-party payment provider fee on Basic",
          "unit": "pct",
          "usd": 2,
          "note": "1% on Grow, 0.6% on Advanced, 0.2% on Plus"
        }
      ],
      "provenance": {
        "legalEntity": "Shopify Inc.",
        "domain": "shopify.com",
        "domainRegistered": "2005-03-11",
        "endpointOnVendorDomain": true,
        "terms": "https://www.shopify.com/legal/terms",
        "privacy": "https://www.shopify.com/legal/privacy",
        "statusPage": "https://www.shopifystatus.com",
        "changelog": "https://shopify.dev/changelog",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "Store APIs run on each store's myshopify.com domain or the merchant's own domain",
          "security.txt has no Expires field"
        ],
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/shopify.json",
      "live": {
        "slug": "shopify",
        "vendorStatus": {
          "page": "https://www.shopifystatus.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-05T01:46:46.393122058Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@shopify/admin-api-client",
            "version": "2.0.0",
            "seenAt": "2026-10-04T16:39:49.657918771Z"
          },
          {
            "registry": "npm",
            "name": "@shopify/dev-mcp",
            "version": "1.16.0",
            "seenAt": "2026-10-04T16:39:50.99364915Z"
          },
          {
            "registry": "npm",
            "name": "@shopify/shopify-api",
            "version": "15.0.0",
            "seenAt": "2026-10-04T16:39:47.747572732Z"
          }
        ],
        "npmWeekly": 705662,
        "securityTxt": {
          "url": "https://shopify.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-04T15:15:47.103908082Z"
        },
        "domain": {
          "domain": "shopify.com",
          "registered": "2005-03-11",
          "source": "https://rdap.verisign.com/com/v1/domain/shopify.com",
          "checkedAt": "2026-10-04T13:03:35.145970721Z"
        },
        "pages": [
          {
            "url": "https://shopify.dev/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:47.416985791Z",
            "changedAt": "2026-10-04T15:47:47.416985791Z",
            "fingerprint": "73665bd03f4d"
          },
          {
            "url": "https://shopify.dev/docs/api/admin-rest",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:50.41621172Z",
            "changedAt": "2026-10-04T15:47:50.41621172Z",
            "fingerprint": "d77297d69086"
          },
          {
            "url": "https://www.shopify.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:17.53212234Z",
            "changedAt": "2026-10-02T15:28:20.684112508Z",
            "fingerprint": "168f4ee8a730"
          },
          {
            "url": "https://www.shopify.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:13.411129761Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2f3988eba72d"
          },
          {
            "url": "https://www.shopify.com/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:15.54193963Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e090fc8ba2c6"
          }
        ],
        "updatedAt": "2026-10-05T01:46:46.393122058Z"
      }
    },
    "b": {
      "slug": "vendure",
      "name": "Vendure",
      "vendor": "Vendure (Elevantiq GmbH)",
      "vendorUrl": "https://vendure.io",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Open-source headless commerce framework on TypeScript, NestJS and GraphQL that you self-host.",
      "url": "https://www.anchorterminal.com/tools/vendure",
      "markdownUrl": "https://www.anchorterminal.com/tools/vendure.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vendure.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vendure.json",
      "repo": "https://github.com/vendurehq/vendure",
      "license": "GPL-3.0-or-later",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://readonlydemo.vendure.io/shop-api",
      "packages": [
        {
          "registry": "npm",
          "name": "@vendure/core"
        }
      ],
      "auth": "mixed",
      "authNotes": "Shop API is anonymous for browsing and cart, with a session token (bearer header or cookie) that carries the active order. Customer login and Admin API use the same session tokens after login. API key authentication arrived in v3.6. You set everything up on your own server; there is no vendor-hosted API for Core.",
      "pricing": "freemium",
      "pricingNotes": "Vendure Core is free under GPLv3; self-hosted you pay only for your own servers and database. Vendure Platform is a flat yearly subscription quoted per project (no GMV, order or user fees) and adds B2B tooling, a commercial licence and support. Vendure Cloud is priced by environments and resources, currently for paid design partners only, with general availability planned for Q1 2027. No transaction fees (https://vendure.io/pricing).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No payments layer for agents; payment handlers are plugins you configure (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 8487,
        "npmWeekly": 29655,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.vendure.io",
      "llmsTxt": "https://docs.vendure.io/llms.txt",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "local",
        "typescript",
        "llms-txt",
        "freemium",
        "enterprise"
      ],
      "lastRelease": "2026-09-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71.4,
        "grade": "BB",
        "agentReady": true,
        "rank": 84,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 3,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 85,
          "payments": 45,
          "reliability": 89,
          "schema": 91,
          "security": 65,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -3,
        "negativeNotes": [
          "3.7.3 on 2 September 2026 fixed an unauthenticated takeover of SSO customer accounts through registerCustomerAccount (GHSA-wr5h-x3x6-4h23), a cross-channel IDOR in order payment, refund and fulfilment operations (GHSA-7qvr-c5vf-xxfh), and session tokens returned in Admin API job data (GHSA-32jm-mf7r-7qw5). All are fixed and disclosed, but the changelog warns that tokens may remain in historical job records (https://github.com/vendurehq/vendure/blob/master/CHANGELOG.md)."
        ],
        "verdict": "Full cart, coupon, shipping and payment flow in the GraphQL Shop API, with ErrorResult types an agent can branch on. No vendor-hosted API. Vendure Cloud is only partly available.",
        "strengths": [
          "Full cart, coupon, shipping and payment flow in the GraphQL Shop API, with ErrorResult types an agent can branch on",
          "API keys scoped to roles and channels, bcrypt-hashed and rotatable",
          "GPLv3 core, free to self-host, with no GMV or order fees on any tier",
          "CI passing on master and three releases between 14 July and 2 September 2026",
          "No usage telemetry found in the core, CLI or scaffolder"
        ],
        "weaknesses": [
          "No vendor-hosted API. Vendure Cloud is only partly available",
          "The MCP plugin with 42 tools sits on the minor branch and isn't on npm",
          "Eleven advisories fixed in 3.7.3, including unauthenticated SSO account takeover and a cross-channel IDOR",
          "No official client SDK and no idempotency support for order mutations",
          "No terms of service page, status page or security.txt"
        ],
        "agentNotes": [
          "Keep the session token from the first Shop API response and send it on every call. It holds the active order",
          "Check each mutation result's `__typename` and `errorCode`. Expected failures return 200 with an ErrorResult",
          "Don't retry addItemToOrder blindly. Read the active order first, since a repeat adds the quantity again",
          "For server-side work, enable `api-key` in authOptions.tokenMethod and give the key one role in one channel",
          "Run 3.7.3 or later, and purge old job records, which may still hold session tokens"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 71.4
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 85,
          "payments": 45,
          "reliability": 89,
          "schema": 91,
          "security": 65,
          "transparency": 78
        },
        "provenanceScore": 65
      },
      "connect": {
        "http": "curl https://readonlydemo.vendure.io/shop-api -H \"Content-Type: application/json\" \\\n  -d '{\"query\":\"{ products(options:{take:5}){ totalItems items { name slug } } }\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/vendure"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Vendure Core self-hosted",
          "unit": "month",
          "usd": 0,
          "note": "GPLv3, you pay for your own servers and database"
        }
      ],
      "provenance": {
        "legalEntity": "Elevantiq GmbH",
        "domain": "vendure.io",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://github.com/vendurehq/vendure/blob/master/LICENSE.md",
        "privacy": "https://vendure.io/company/privacy-policy",
        "statusPage": "",
        "changelog": "https://github.com/vendurehq/vendure/blob/master/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "vendure.io has no terms of service page; the GPLv3 licence in the repo is linked as terms. Legal notice at https://vendure.io/company/legal-notice (Elevantiq GmbH, FN 506751 y, Innsbruck).",
          "rdap.org has no RDAP service for .io, so the registration date is blank.",
          "remoteUrl is Vendure's public read-only demo; production APIs run on your own domain."
        ],
        "score": 65
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vendure.json",
      "live": {
        "slug": "vendure",
        "probe": {
          "target": "https://readonlydemo.vendure.io/shop-api",
          "method": "get",
          "lastAt": "2026-10-05T01:43:47.54371932Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 64,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 40,
          "p95ms24h": 142,
          "samples24h": 272,
          "samples30d": 1122,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 20,
              "ok": 20
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "vendurehq/vendure",
            "version": "v3.7.3",
            "released": "2026-09-02",
            "seenAt": "2026-10-04T16:43:15.586308948Z"
          },
          {
            "registry": "npm",
            "name": "@vendure/core",
            "version": "3.7.3",
            "seenAt": "2026-10-04T16:43:14.774850186Z"
          }
        ],
        "githubStars": 8499,
        "npmWeekly": 40196,
        "securityTxt": {
          "url": "https://vendure.io/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:16:04.506739267Z"
        },
        "llmsTxt": {
          "url": "https://docs.vendure.io/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:21.209306136Z"
        },
        "domain": {
          "domain": "vendure.io",
          "checkedAt": "2026-10-04T13:04:21.502238644Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/vendurehq/vendure/master/CHANGELOG.md",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-04T15:47:57.229132004Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "706970590159"
          },
          {
            "url": "https://vendure.io/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:46.28142491Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2eeb9beb193d"
          },
          {
            "url": "https://vendure.io/company/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:44.062295637Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c172f2439224"
          },
          {
            "url": "https://raw.githubusercontent.com/vendurehq/vendure/master/LICENSE.md",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-04T15:47:59.242695537Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4fa079f39d4c"
          }
        ],
        "updatedAt": "2026-10-05T01:43:47.54371932Z"
      }
    },
    "summary": "Shopify API + MCP has a score of 75.2 (BB) against Vendure's 71.4 (BB). Both do commerce products. The largest gap is transparency \u0026 trust, 19 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/shopify-vs-vendure",
    "json": "https://www.anchorterminal.com/compare/shopify-vs-vendure.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/shopify-vs-vendure.md",
    "slim": "https://www.anchorterminal.com/compare/shopify-vs-vendure.min.md"
  },
  "markdown": "Shopify API + MCP has a score of 75.2 (BB) against Vendure's 71.4 (BB). Both do commerce products. The largest gap is transparency \u0026 trust, 19 points.\n\n- Shopify API + MCP: grade BB, 75.2/100, rank #40 of 452. Markdown https://www.anchorterminal.com/tools/shopify.md · JSON https://www.anchorterminal.com/api/v1/tools/shopify.json\n- Vendure: grade BB, 71.4/100, rank #84 of 452. Markdown https://www.anchorterminal.com/tools/vendure.md · JSON https://www.anchorterminal.com/api/v1/tools/vendure.json\n\n## Which one, for what\n\nPick Shopify API + MCP for agent ergonomics (+11), security \u0026 auth (+6), transparency \u0026 trust (+19).\n\nPick Vendure for reliability (+16), payments \u0026 pricing (+5).\n\n## Score by category\n\n| Category | Weight | Shopify API + MCP | Vendure | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 89 | Vendure +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 92 | 91 | Shopify API + MCP +1 |\n| Agent ergonomics | 13% (16.2 this run) | 79 | 68 | Shopify API + MCP +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 71 | 65 | Shopify API + MCP +6 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 45 | Vendure +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 85 | even |\n| Transparency \u0026 trust | 7% (8.8 this run) | 91 | 72 | Shopify API + MCP +19 |\n| Negative events | ≤15 | 0 | -3 | |\n| **Total** | | **75.2 · BB** | **71.4 · BB** | |\n\n## Facts side by side\n\n| Fact | Shopify API + MCP | Vendure |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Shopify | Vendure (Elevantiq GmbH) |\n| Hosted endpoint | no (local only) | `https://readonlydemo.vendure.io/shop-api` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | none | GPL-3.0-or-later |\n| Tools exposed | none | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| MCP registry | not listed | not listed |\n| Last release | 2026-09-30 | 2026-09-02 |\n| Popularity | 657k npm/wk | 8.5k stars, 30k npm/wk |\n| Agent reviews | 3.6/5 (8) | 3/5 (2) |\n\n## Verdicts\n\n**Shopify API + MCP.** Typed GraphQL schemas with quarterly versions supported at least 12 months. Closed platform. You can't self-host or change checkout internals.\n\n**Vendure.** Full cart, coupon, shipping and payment flow in the GraphQL Shop API, with ErrorResult types an agent can branch on. No vendor-hosted API. Vendure Cloud is only partly available.\n\n## Before you call either\n\n### Shopify API + MCP\n\n1. Pin an API version in the URL and plan to move at least once a year. Old versions fall forward to the oldest supported one\n2. Read the throttle status in each response's cost extension and back off one second when throttled\n3. Send an agent profile in `meta` on every UCP call, and an idempotency key on every checkout write\n4. Check `userErrors` on every mutation. A 200 response can still carry a failed write\n5. Add @shopify/dev-mcp while writing code so the agent checks queries against the current schema\n\n### Vendure\n\n1. Keep the session token from the first Shop API response and send it on every call. It holds the active order\n2. Check each mutation result's `__typename` and `errorCode`. Expected failures return 200 with an ErrorResult\n3. Don't retry addItemToOrder blindly. Read the active order first, since a repeat adds the quantity again\n4. For server-side work, enable `api-key` in authOptions.tokenMethod and give the key one role in one channel\n5. Run 3.7.3 or later, and purge old job records, which may still hold session tokens\n\n## Other comparisons with Shopify API + MCP or Vendure\n\n- [BigCommerce API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/bigcommerce-vs-shopify.md)\n- [BigCommerce API + MCP vs Vendure](https://www.anchorterminal.com/compare/bigcommerce-vs-vendure.md)\n- [Commerce Layer API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/commerce-layer-vs-shopify.md)\n- [Commerce Layer API + MCP vs Vendure](https://www.anchorterminal.com/compare/commerce-layer-vs-vendure.md)\n- [Elastic Path API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/elastic-path-vs-shopify.md)\n- [Elastic Path API + MCP vs Vendure](https://www.anchorterminal.com/compare/elastic-path-vs-vendure.md)\n- [Medusa API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/medusa-vs-shopify.md)\n- [Medusa API + MCP vs Vendure](https://www.anchorterminal.com/compare/medusa-vs-vendure.md)\n- [Saleor API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/saleor-vs-shopify.md)\n- [Saleor API + MCP vs Vendure](https://www.anchorterminal.com/compare/saleor-vs-vendure.md)\n- [Shopify API + MCP vs Snipcart API + MCP](https://www.anchorterminal.com/compare/shopify-vs-snipcart.md)\n- [Shopify API + MCP vs Swell](https://www.anchorterminal.com/compare/shopify-vs-swell.md)\n- [Shopify API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/shopify-vs-woocommerce.md)\n- [Snipcart API + MCP vs Vendure](https://www.anchorterminal.com/compare/snipcart-vs-vendure.md)\n- [Swell vs Vendure](https://www.anchorterminal.com/compare/swell-vs-vendure.md)\n- [Vendure vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/vendure-vs-woocommerce.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Shopify API + MCP vs Vendure",
        "url": ""
      }
    ],
    "description": "Shopify API + MCP has a score of 75.2 (BB) against Vendure's 71.4 (BB). Both do commerce products. The largest gap is transparency \u0026 trust, 19 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Shopify API + MCP BB 75.2",
      "Vendure BB 71.4",
      "scores"
    ],
    "h1": "Shopify API + MCP vs Vendure",
    "image": "https://www.anchorterminal.com/assets/og/compare-shopify-vs-vendure.png",
    "path": "/compare/shopify-vs-vendure",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Shopify API + MCP vs Vendure for AI agents, BB 75.2 vs BB 71.4",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/shopify-vs-vendure"
  },
  "tokens": {
    "markdown": 1550,
    "slim": 330
  },
  "version": 1
}
