{
  "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,
        "grade": "BB",
        "agentReady": true,
        "rank": 58,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 79,
          "maintenance": 85,
          "payments": 40,
          "reliability": 73,
          "schema": 92,
          "security": 71,
          "transparency": 88
        },
        "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.",
        "bestFor": "Agents that shop on real stores or automate a merchant's back office at scale.",
        "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.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75
          }
        ],
        "editorialScores": {
          "ergonomics": 79,
          "maintenance": 85,
          "payments": 40,
          "reliability": 73,
          "schema": 92,
          "security": 71,
          "transparency": 81
        },
        "provenanceScore": 95
      },
      "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": 95
      },
      "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-10T03:58:46.505961524Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@shopify/admin-api-client",
            "version": "2.0.1",
            "seenAt": "2026-10-09T17:19:46.323843615Z"
          },
          {
            "registry": "npm",
            "name": "@shopify/dev-mcp",
            "version": "1.16.0",
            "seenAt": "2026-10-09T17:19:47.616511797Z"
          },
          {
            "registry": "npm",
            "name": "@shopify/shopify-api",
            "version": "15.0.1",
            "seenAt": "2026-10-09T17:19:45.348380962Z"
          }
        ],
        "npmWeekly": 626138,
        "securityTxt": {
          "url": "https://shopify.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-09T15:39:46.149124944Z"
        },
        "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-09T18:45:18.333234413Z",
            "changedAt": "2026-10-09T18:45:18.333234413Z",
            "fingerprint": "51c1900c0bb7"
          },
          {
            "url": "https://shopify.dev/docs/api/admin-rest",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:20.85230467Z",
            "changedAt": "2026-10-09T18:45:20.85230467Z",
            "fingerprint": "faa47e50c685"
          },
          {
            "url": "https://www.shopify.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:54:13.018685142Z",
            "changedAt": "2026-10-09T18:54:13.018685142Z",
            "fingerprint": "ac61bdaea958"
          },
          {
            "url": "https://www.shopify.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:54:08.876583331Z",
            "changedAt": "2026-10-06T16:16:55.59409922Z",
            "fingerprint": "dd0fa2f812e3"
          },
          {
            "url": "https://www.shopify.com/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:54:10.970953687Z",
            "changedAt": "2026-10-06T16:16:57.712783971Z",
            "fingerprint": "c70ea5d08606"
          }
        ],
        "updatedAt": "2026-10-10T03:58:46.505961524Z"
      }
    },
    "answer": "Shopify API + MCP scores 75 (BB) on agent readiness against Spree Commerce's 70.4 (BB), and leads in 4 of 7 scored categories. Spree Commerce leads on reliability, agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "spree-commerce",
      "name": "Spree Commerce",
      "vendor": "Vendo Connect Inc",
      "vendorUrl": "https://spreecommerce.org",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Spree Commerce is an open-source commerce platform on Ruby on Rails, maintained by Vendo Connect Inc. A self-hosted store runs a Store API for catalogue, cart and checkout, and an Admin API for back-office work.",
      "url": "https://www.anchorterminal.com/tools/spree-commerce",
      "markdownUrl": "https://www.anchorterminal.com/tools/spree-commerce.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/spree-commerce.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/spree-commerce.json",
      "repo": "https://github.com/spree/spree",
      "license": "BSD-3-Clause for the backend, MIT for the npm packages. Enterprise Edition code is under a separate commercial licence",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@spree/sdk"
        },
        {
          "registry": "npm",
          "name": "@spree/cli"
        },
        {
          "registry": "npm",
          "name": "@spree/admin-sdk"
        },
        {
          "registry": "rubygems",
          "name": "spree"
        }
      ],
      "auth": "mixed",
      "authNotes": "Store API calls need a publishable key (`pk_`) in the `X-Spree-Api-Key` header, plus a customer JWT as a Bearer token or a cart token in `X-Spree-Token` for guests. Admin API calls take a secret key (`sk_`) with `read_*` and `write_*` scopes per resource, or an admin JWT. Keys are created by the store's operator in the dashboard or with `spree api-key create`, with no vendor approval.",
      "pricing": "freemium",
      "pricingNotes": "Free to self-host under BSD 3-Clause, with no platform or transaction fee. The Enterprise Edition is custom pricing through sales. A free hosted Sandbox lets an agent's owner try the Admin API without a contract, for evaluation with test data only (https://spreecommerce.org/enterprise/, checked 2026-10-09).",
      "priceSummary": "Freemium",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the OpenAPI files or the repository (checked 2026-10-09). Payments go through provider integrations such as Stripe, Adyen and PayPal.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 15750,
        "npmWeekly": 1576,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://spreecommerce.org/docs",
      "llmsTxt": "https://spreecommerce.org/docs/llms.txt",
      "openapi": "https://spreecommerce.org/docs/api-reference/store.yaml",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "local",
        "openapi",
        "llms-txt",
        "mcp",
        "typescript",
        "ruby",
        "webhooks",
        "freemium"
      ],
      "lastRelease": "2026-07-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.4,
        "grade": "BB",
        "agentReady": true,
        "rank": 155,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 90,
          "maintenance": 81,
          "payments": 55,
          "reliability": 82,
          "schema": 85,
          "security": 65,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -5,
        "negativeNotes": [
          "2026-07-20: six security advisories were published for `spree_api` and related gems between 8 January and 20 July 2026, four rated High, among them guest address and order disclosure without authentication (GHSA-87fh-rc96-6fr6, GHSA-p6pv-q7rc-g4h9, 5 February) and a guest cart takeover on `PATCH /api/v3/store/carts/:id/associate` (GHSA-4825-p4xm-pcf2, 20 July, fixed in 5.4.4 and 5.5.4). All are published with patched versions, so the deduction is reduced (https://github.com/spree/spree/security/advisories)."
        ],
        "verdict": "A self-hosted BSD 3-Clause platform with public OpenAPI files for the Store and Admin APIs, scoped secret keys, documented rate limits and idempotency keys on cart and checkout calls. GitHub lists six security advisories between January and July 2026, four rated High, and the default docs describe the 6.0 release candidate while 5.6.1 is the stable release.",
        "bestFor": "Teams that want to own a Rails commerce backend with marketplace, B2B and multi-region functions and drive it through REST.",
        "strengths": [
          "OpenAPI 3.0.3 files for the Store API (81 paths, 99 operations) and Admin API (259 paths, 417 operations), plus llms.txt and a Markdown copy of every docs page",
          "Secret keys carry `read_*` and `write_*` scopes per resource, are shown once and can be revoked, and a key cannot create a key with wider scopes",
          "`Idempotency-Key` on eight cart, checkout and payment calls, cached for 24 hours, with `Retry-After` on 429 responses",
          "Rate limits are published with numbers, 300 requests a minute per API key by default, and the operator can change them",
          "BSD 3-Clause backend and MIT TypeScript packages, with marketplace and B2B functions in the open-source edition"
        ],
        "weaknesses": [
          "Six GitHub security advisories between 8 January and 20 July 2026, four rated High, most of them access-control flaws on guest carts, orders and addresses",
          "The default docs and the main-branch OpenAPI files describe 6.0, a release candidate dated 8 October 2026. The stable release is 5.6.1 of 28 July 2026",
          "The audit trail is in the paid Enterprise Edition only, and Enterprise prices are not published",
          "Supported-version end dates differ between `SECURITY.md` (5.x until 26 March 2027) and the docs security policy (5.0 until 26 March 2028)",
          "The official MCP server searches and reads the docs only. Store and admin MCP servers are open roadmap issues"
        ],
        "agentNotes": [
          "Send a publishable key in `X-Spree-Api-Key` on every Store API call. Add `X-Spree-Token` with the cart token for guest carts, or a customer JWT as a Bearer token",
          "Send `Idempotency-Key` with the cart token or a customer JWT on cart, payment and completion calls. A request carrying only the publishable key is never cached",
          "Ask for `fields` and `expand` explicitly. Relations are left out by default and `limit` stops at 100",
          "Use a secret key with the narrowest scopes for the Admin API. `read_all` gives a read-only key, and the CLI's auto-minted local key is read-only",
          "Read the docs under `/docs/v5` for a 5.6 store. The default docs describe 6.0, which renames shipments to fulfilments and splits carts from orders"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70.4
          }
        ],
        "editorialScores": {
          "ergonomics": 90,
          "maintenance": 81,
          "payments": 55,
          "reliability": 82,
          "schema": 85,
          "security": 65,
          "transparency": 75
        },
        "provenanceScore": 45
      },
      "connect": {
        "install": "npx create-spree-app@latest my-store",
        "http": "curl -X GET 'http://localhost:3000/api/v3/store/products' -H 'X-Spree-Api-Key: pk_xxx'",
        "claudeCode": "claude mcp add --transport http spree-docs https://spreecommerce.org/docs/mcp",
        "config": {
          "mcpServers": {
            "spree-docs": {
              "url": "https://spreecommerce.org/docs/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/spree-commerce"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Community Edition, self-hosted",
          "unit": "month",
          "usd": 0,
          "note": "BSD 3-Clause, the operator pays for its own servers"
        }
      ],
      "provenance": {
        "legalEntity": "Vendo Connect Inc",
        "domain": "spreecommerce.org",
        "domainRegistered": "2009-04-03",
        "endpointOnVendorDomain": false,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/spree/spree/releases",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The Sandbox terms name VENDO CONNECT INC, a Delaware corporation (file number 7005612), 3500 S DuPont Highway, Dover, Delaware 19901, as the company behind the Spree Commerce project. The `LICENSE` file also names Vendo Sp. z o.o. as a copyright holder.",
          "The API runs on the operator's own server, so there is no vendor endpoint and no vendor status page.",
          "No terms or privacy document governs the self-hosted software, and the BSD 3-Clause licence stands in. The published terms (https://spreecommerce.org/terms-of-service/) and privacy notice (https://spreecommerce.org/privacy-policy-sandbox/), both dated 10 July 2026, cover only the hosted Sandbox and Vendo's websites.",
          "https://spreecommerce.org/.well-known/security.txt returns 404. `SECURITY.md` in the repository gives a security mailbox for reports.",
          "RDAP for spreecommerce.org gives a registration date of 2009-04-03 and GoDaddy.com, LLC as registrar."
        ],
        "score": 45
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/spree-commerce.json",
      "live": {
        "slug": "spree-commerce",
        "versions": [
          {
            "registry": "github",
            "name": "spree/spree",
            "version": "v5.6.1",
            "released": "2026-07-28",
            "seenAt": "2026-10-09T17:21:34.764539584Z"
          },
          {
            "registry": "npm",
            "name": "@spree/admin-sdk",
            "version": "0.1.0",
            "seenAt": "2026-10-09T17:21:32.71633834Z"
          },
          {
            "registry": "npm",
            "name": "@spree/cli",
            "version": "3.2.2",
            "seenAt": "2026-10-09T17:21:30.96599442Z"
          },
          {
            "registry": "npm",
            "name": "@spree/sdk",
            "version": "1.2.1",
            "seenAt": "2026-10-09T17:21:28.899108995Z"
          }
        ],
        "githubStars": 15751,
        "npmWeekly": 1576,
        "updatedAt": "2026-10-09T17:21:34.764539584Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Shopify",
        "b": "Vendo Connect Inc",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "BSD-3-Clause for the backend, MIT for the npm packages. Enterprise Edition code is under a separate commercial licence",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-30",
        "b": "2026-07-28",
        "name": "Last release"
      },
      {
        "a": "2026-08-01",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-07-07",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "657k npm/wk",
        "b": "16k stars, 1.6k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "3.6/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Shopify API + MCP scores 75 (BB) on agent readiness against Spree Commerce's 70.4 (BB), and leads in 4 of 7 scored categories. Spree Commerce leads on reliability, agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Shopify API + MCP or Spree Commerce?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Shopify API + MCP and Spree Commerce need an API key?"
      },
      {
        "answer": "Shopify API + MCP runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Spree Commerce.",
        "question": "Can an agent call Shopify API + MCP and Spree Commerce without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Shopify API + MCP. Spree Commerce is open source (BSD-3-Clause for the backend, MIT for the npm packages. Enterprise Edition code is under a separate commercial licence).",
        "question": "Are Shopify API + MCP and Spree Commerce open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 92 against 85",
          "Security \u0026 auth, 71 against 65",
          "Transparency \u0026 trust, 88 against 60"
        ],
        "also": [
          "Runs on your own machine",
          "No incidents deducted, where Spree Commerce loses 5 points for them"
        ],
        "goodFor": "Agents that shop on real stores or automate a merchant's back office at scale.",
        "slug": "shopify",
        "watchFor": "Closed platform. You can't self-host or change checkout internals"
      },
      {
        "aheadOn": [
          "Reliability, 82 against 73",
          "Agent ergonomics, 90 against 79",
          "Payments \u0026 pricing, 55 against 40"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "Teams that want to own a Rails commerce backend with marketplace, B2B and multi-region functions and drive it through REST.",
        "slug": "spree-commerce",
        "watchFor": "Six GitHub security advisories between 8 January and 20 July 2026, four rated High, most of them access-control flaws on guest carts, orders and addresses"
      }
    ],
    "job": {
      "capability": "commerce.products",
      "name": "Commerce catalogues"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-commerce-vs-shopify.json",
        "title": "Adobe Commerce (Magento) vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-commerce-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-commerce-vs-spree-commerce.json",
        "title": "Adobe Commerce (Magento) vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/adobe-commerce-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bigcommerce-vs-shopify.json",
        "title": "BigCommerce API + MCP vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/bigcommerce-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bigcommerce-vs-spree-commerce.json",
        "title": "BigCommerce API + MCP vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/bigcommerce-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commerce-layer-vs-shopify.json",
        "title": "Commerce Layer API + MCP vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/commerce-layer-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commerce-layer-vs-spree-commerce.json",
        "title": "Commerce Layer API + MCP vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/commerce-layer-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-shopify.json",
        "title": "commercetools vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-spree-commerce.json",
        "title": "commercetools vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-shopify.json",
        "title": "Ecwid by Lightspeed vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-spree-commerce.json",
        "title": "Ecwid by Lightspeed vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elastic-path-vs-shopify.json",
        "title": "Elastic Path API + MCP vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/elastic-path-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elastic-path-vs-spree-commerce.json",
        "title": "Elastic Path API + MCP vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/elastic-path-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medusa-vs-shopify.json",
        "title": "Medusa API + MCP vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/medusa-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/medusa-vs-spree-commerce.json",
        "title": "Medusa API + MCP vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/medusa-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/saleor-vs-shopify.json",
        "title": "Saleor API + MCP vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/saleor-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/saleor-vs-spree-commerce.json",
        "title": "Saleor API + MCP vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/saleor-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-shopware.json",
        "title": "Shopify API + MCP vs Shopware",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-shopware"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-snipcart.json",
        "title": "Shopify API + MCP vs Snipcart API + MCP",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-snipcart"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-square.json",
        "title": "Shopify API + MCP vs Square",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-swell.json",
        "title": "Shopify API + MCP vs Swell",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-swell"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-vendure.json",
        "title": "Shopify API + MCP vs Vendure",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-vendure"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-wix.json",
        "title": "Shopify API + MCP vs Wix Stores and eCommerce API",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-wix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopify-vs-woocommerce.json",
        "title": "Shopify API + MCP vs WooCommerce API + MCP",
        "url": "https://www.anchorterminal.com/compare/shopify-vs-woocommerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shopware-vs-spree-commerce.json",
        "title": "Shopware vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/shopware-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/snipcart-vs-spree-commerce.json",
        "title": "Snipcart API + MCP vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/snipcart-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/spree-commerce-vs-square.json",
        "title": "Spree Commerce vs Square",
        "url": "https://www.anchorterminal.com/compare/spree-commerce-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/spree-commerce-vs-swell.json",
        "title": "Spree Commerce vs Swell",
        "url": "https://www.anchorterminal.com/compare/spree-commerce-vs-swell"
      },
      {
        "json": "https://www.anchorterminal.com/compare/spree-commerce-vs-vendure.json",
        "title": "Spree Commerce vs Vendure",
        "url": "https://www.anchorterminal.com/compare/spree-commerce-vs-vendure"
      },
      {
        "json": "https://www.anchorterminal.com/compare/spree-commerce-vs-wix.json",
        "title": "Spree Commerce vs Wix Stores and eCommerce API",
        "url": "https://www.anchorterminal.com/compare/spree-commerce-vs-wix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/spree-commerce-vs-woocommerce.json",
        "title": "Spree Commerce vs WooCommerce API + MCP",
        "url": "https://www.anchorterminal.com/compare/spree-commerce-vs-woocommerce"
      }
    ],
    "scores": [
      {
        "by": 9,
        "edge": "spree-commerce",
        "key": "reliability",
        "name": "Reliability",
        "shopify": 73,
        "spree-commerce": 82,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "edge": "shopify",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "shopify": 92,
        "spree-commerce": 85,
        "weight": 13
      },
      {
        "by": 11,
        "edge": "spree-commerce",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "shopify": 79,
        "spree-commerce": 90,
        "weight": 13
      },
      {
        "by": 6,
        "edge": "shopify",
        "key": "security",
        "name": "Security \u0026 auth",
        "shopify": 71,
        "spree-commerce": 65,
        "weight": 14
      },
      {
        "by": 15,
        "edge": "spree-commerce",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "shopify": 40,
        "spree-commerce": 55,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 4,
        "edge": "shopify",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "shopify": 85,
        "spree-commerce": 81,
        "weight": 7
      },
      {
        "by": 28,
        "edge": "shopify",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "shopify": 88,
        "spree-commerce": 60,
        "weight": 7
      }
    ],
    "summary": "Shopify API + MCP scores 75 (BB) on agent readiness against Spree Commerce's 70.4 (BB), and leads in 4 of 7 scored categories. Spree Commerce leads on reliability, agent ergonomics and payments \u0026 pricing. Both do commerce catalogues.",
    "verdicts": {
      "shopify": "Typed GraphQL schemas with quarterly versions supported at least 12 months. Closed platform. You can't self-host or change checkout internals.",
      "spree-commerce": "A self-hosted BSD 3-Clause platform with public OpenAPI files for the Store and Admin APIs, scoped secret keys, documented rate limits and idempotency keys on cart and checkout calls. GitHub lists six security advisories between January and July 2026, four rated High, and the default docs describe the 6.0 release candidate while 5.6.1 is the stable release."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/shopify-vs-spree-commerce",
    "json": "https://www.anchorterminal.com/compare/shopify-vs-spree-commerce.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/shopify-vs-spree-commerce.md",
    "slim": "https://www.anchorterminal.com/compare/shopify-vs-spree-commerce.min.md"
  },
  "markdown": "Shopify API + MCP scores 75 (BB) on agent readiness against Spree Commerce's 70.4 (BB), and leads in 4 of 7 scored categories. Spree Commerce leads on reliability, agent ergonomics and payments \u0026 pricing. Both do commerce catalogues.\n\n- Shopify API + MCP: grade BB, 75/100, rank #58 of 950. Markdown https://www.anchorterminal.com/tools/shopify.md · JSON https://www.anchorterminal.com/api/v1/tools/shopify.json\n- Spree Commerce: grade BB, 70.4/100, rank #155 of 950. Markdown https://www.anchorterminal.com/tools/spree-commerce.md · JSON https://www.anchorterminal.com/api/v1/tools/spree-commerce.json\n- Best commerce platforms and checkout APIs for AI agents: https://www.anchorterminal.com/best/commerce/index.md\n- All 136 commerce comparisons: https://www.anchorterminal.com/compare/commerce/index.md\n\n## Which one, for what\n\n### Shopify API + MCP (BB)\n\nGood for: Agents that shop on real stores or automate a merchant's back office at scale.\n\nAhead on:\n- Schema \u0026 documentation, 92 against 85\n- Security \u0026 auth, 71 against 65\n- Transparency \u0026 trust, 88 against 60\n\nAlso in its favour:\n- Runs on your own machine\n- No incidents deducted, where Spree Commerce loses 5 points for them\n\nWatch for: Closed platform. You can't self-host or change checkout internals\n\n### Spree Commerce (BB)\n\nGood for: Teams that want to own a Rails commerce backend with marketplace, B2B and multi-region functions and drive it through REST.\n\nAhead on:\n- Reliability, 82 against 73\n- Agent ergonomics, 90 against 79\n- Payments \u0026 pricing, 55 against 40\n\nAlso in its favour:\n- Open source\n\nWatch for: Six GitHub security advisories between 8 January and 20 July 2026, four rated High, most of them access-control flaws on guest carts, orders and addresses\n\n\n## Score by category\n\n| Category | Weight | Shopify API + MCP | Spree Commerce | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 82 | Spree Commerce +9 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 92 | 85 | Shopify API + MCP +7 |\n| Agent ergonomics | 13% (16.2 this run) | 79 | 90 | Spree Commerce +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 | 55 | Spree Commerce +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 81 | Shopify API + MCP +4 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 88 | 60 | Shopify API + MCP +28 |\n| Negative events | ≤15 | 0 | -5 | |\n| **Total** | | **75 · BB** | **70.4 · BB** | |\n\n## Facts side by side\n\n| Fact | Shopify API + MCP | Spree Commerce |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Shopify | Vendo Connect Inc |\n| Hosted endpoint | no (local only) | no (local only) |\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 | BSD-3-Clause for the backend, MIT for the npm packages. Enterprise Edition code is under a separate commercial licence |\n| Read-only variant documented | no | yes |\n| llms.txt | no | yes |\n| Last release | 2026-09-30 | 2026-07-28 |\n| Terms last updated | 2026-08-01 | no document linked |\n| Privacy policy last updated | 2026-07-07 | no document linked |\n| Customer content may train models | not found in the text |  |\n| Terms restrict automated access | yes |  |\n| Terms restrict benchmarking | not found in the text |  |\n| Terms or service can change without notice | yes |  |\n| Arbitration or class-action waiver | not found in the text |  |\n| Popularity | 657k npm/wk | 16k stars, 1.6k npm/wk |\n| Agent reviews | 3.6/5 (8) | none |\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**Spree Commerce.** A self-hosted BSD 3-Clause platform with public OpenAPI files for the Store and Admin APIs, scoped secret keys, documented rate limits and idempotency keys on cart and checkout calls. GitHub lists six security advisories between January and July 2026, four rated High, and the default docs describe the 6.0 release candidate while 5.6.1 is the stable release.\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### Spree Commerce\n\n1. Send a publishable key in `X-Spree-Api-Key` on every Store API call. Add `X-Spree-Token` with the cart token for guest carts, or a customer JWT as a Bearer token\n2. Send `Idempotency-Key` with the cart token or a customer JWT on cart, payment and completion calls. A request carrying only the publishable key is never cached\n3. Ask for `fields` and `expand` explicitly. Relations are left out by default and `limit` stops at 100\n4. Use a secret key with the narrowest scopes for the Admin API. `read_all` gives a read-only key, and the CLI's auto-minted local key is read-only\n5. Read the docs under `/docs/v5` for a 5.6 store. The default docs describe 6.0, which renames shipments to fulfilments and splits carts from orders\n\n## Questions\n\n### Which is better for AI agents, Shopify API + MCP or Spree Commerce?\n\nShopify API + MCP scores 75 (BB) on agent readiness against Spree Commerce's 70.4 (BB), and leads in 4 of 7 scored categories. Spree Commerce leads on reliability, agent ergonomics and payments \u0026 pricing.\n\n### Do Shopify API + MCP and Spree Commerce need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Shopify API + MCP and Spree Commerce without installing anything?\n\nShopify API + MCP runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Spree Commerce.\n\n### Are Shopify API + MCP and Spree Commerce open source?\n\nNo open-source release is listed for Shopify API + MCP. Spree Commerce is open source (BSD-3-Clause for the backend, MIT for the npm packages. Enterprise Edition code is under a separate commercial licence).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/shopify-vs-spree-commerce.json, and with the fewest tokens: https://www.anchorterminal.com/compare/shopify-vs-spree-commerce.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"shopify\", \"b\": \"spree-commerce\"}`. From a terminal: `anchor compare shopify spree-commerce`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/shopify.json and https://www.anchorterminal.com/api/v1/tools/spree-commerce.json\n\n## Other comparisons with Shopify API + MCP or Spree Commerce\n\n- [Adobe Commerce (Magento) vs Shopify API + MCP](https://www.anchorterminal.com/compare/adobe-commerce-vs-shopify.md)\n- [Adobe Commerce (Magento) vs Spree Commerce](https://www.anchorterminal.com/compare/adobe-commerce-vs-spree-commerce.md)\n- [BigCommerce API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/bigcommerce-vs-shopify.md)\n- [BigCommerce API + MCP vs Spree Commerce](https://www.anchorterminal.com/compare/bigcommerce-vs-spree-commerce.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 Spree Commerce](https://www.anchorterminal.com/compare/commerce-layer-vs-spree-commerce.md)\n- [commercetools vs Shopify API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-shopify.md)\n- [commercetools vs Spree Commerce](https://www.anchorterminal.com/compare/commercetools-vs-spree-commerce.md)\n- [Ecwid by Lightspeed vs Shopify API + MCP](https://www.anchorterminal.com/compare/ecwid-vs-shopify.md)\n- [Ecwid by Lightspeed vs Spree Commerce](https://www.anchorterminal.com/compare/ecwid-vs-spree-commerce.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 Spree Commerce](https://www.anchorterminal.com/compare/elastic-path-vs-spree-commerce.md)\n- [Medusa API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/medusa-vs-shopify.md)\n- [Medusa API + MCP vs Spree Commerce](https://www.anchorterminal.com/compare/medusa-vs-spree-commerce.md)\n- [Saleor API + MCP vs Shopify API + MCP](https://www.anchorterminal.com/compare/saleor-vs-shopify.md)\n- [Saleor API + MCP vs Spree Commerce](https://www.anchorterminal.com/compare/saleor-vs-spree-commerce.md)\n- [Shopify API + MCP vs Shopware](https://www.anchorterminal.com/compare/shopify-vs-shopware.md)\n- [Shopify API + MCP vs Snipcart API + MCP](https://www.anchorterminal.com/compare/shopify-vs-snipcart.md)\n- [Shopify API + MCP vs Square](https://www.anchorterminal.com/compare/shopify-vs-square.md)\n- [Shopify API + MCP vs Swell](https://www.anchorterminal.com/compare/shopify-vs-swell.md)\n- [Shopify API + MCP vs Vendure](https://www.anchorterminal.com/compare/shopify-vs-vendure.md)\n- [Shopify API + MCP vs Wix Stores and eCommerce API](https://www.anchorterminal.com/compare/shopify-vs-wix.md)\n- [Shopify API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/shopify-vs-woocommerce.md)\n- [Shopware vs Spree Commerce](https://www.anchorterminal.com/compare/shopware-vs-spree-commerce.md)\n- [Snipcart API + MCP vs Spree Commerce](https://www.anchorterminal.com/compare/snipcart-vs-spree-commerce.md)\n- [Spree Commerce vs Square](https://www.anchorterminal.com/compare/spree-commerce-vs-square.md)\n- [Spree Commerce vs Swell](https://www.anchorterminal.com/compare/spree-commerce-vs-swell.md)\n- [Spree Commerce vs Vendure](https://www.anchorterminal.com/compare/spree-commerce-vs-vendure.md)\n- [Spree Commerce vs Wix Stores and eCommerce API](https://www.anchorterminal.com/compare/spree-commerce-vs-wix.md)\n- [Spree Commerce vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/spree-commerce-vs-woocommerce.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "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 Spree Commerce",
        "url": ""
      }
    ],
    "description": "Shopify scores 75 (BB) to Spree Commerce's 70.4 (BB) for commerce catalogues. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Shopify API + MCP BB 75",
      "Spree Commerce BB 70.4",
      "scores"
    ],
    "h1": "Shopify API + MCP vs Spree Commerce",
    "image": "https://www.anchorterminal.com/assets/og/compare-shopify-vs-spree-commerce.png",
    "path": "/compare/shopify-vs-spree-commerce",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Shopify vs Spree Commerce for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/shopify-vs-spree-commerce"
  },
  "tokens": {
    "markdown": 2750,
    "slim": 730
  },
  "version": 1
}
