{
  "data": {
    "a": {
      "slug": "swell",
      "name": "Swell",
      "vendor": "Swell",
      "vendorUrl": "https://www.swell.is",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Hosted headless commerce platform with a REST Backend API (products, carts, orders, subscriptions, coupons, promotions, custom models) and a Frontend API for storefronts.",
      "url": "https://www.anchorterminal.com/tools/swell",
      "markdownUrl": "https://www.anchorterminal.com/tools/swell.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/swell.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/swell.json",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.swell.store",
      "packages": [
        {
          "registry": "npm",
          "name": "swell-node"
        },
        {
          "registry": "npm",
          "name": "swell-js"
        }
      ],
      "auth": "api-key",
      "authNotes": "Backend API uses HTTP Basic auth with the store ID as username and a secret key as password. sk_test_ keys hit the test environment, sk_live_ keys hit live data. The Frontend API (swell-js) uses a public key. Official libraries use a custom wire protocol on port 8443.",
      "pricing": "paid",
      "pricingNotes": "Billed yearly, Starter $29 a month (2 admins, $50K yearly sales), Basic $79 ($250K), Standard $299 ($1M), Unlimited $2,250 ($5M), Custom above $10M. Above the sales ceiling Swell takes 2, 1.5, 1 or 0.4 per cent. Monthly API requests 100K, 500K and 2M on the first three plans, then $5 per extra 100K; function calls and storage are metered the same way. Monthly billing costs more (the page shows 25 per cent off for yearly). Free trial on every plan (https://www.swell.is/pricing).",
      "priceSummary": "$29 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 in the docs, pricing or AI page (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 4510,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.swell.is",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "hosted",
        "typescript",
        "webhooks",
        "closed-source"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.1,
        "grade": "C",
        "agentReady": false,
        "rank": 317,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 8,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 82,
          "payments": 25,
          "reliability": 63,
          "schema": 68,
          "security": 35,
          "transparency": 51
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Live /:models schema with field types and descriptions for every store. One full-access secret key per environment, with no scoped or read-only key.",
        "strengths": [
          "Live /:models schema with field types and descriptions for every store",
          "Carts, coupons, promotions, subscriptions and orders in one REST API",
          "Official Claude Code skills with about 320 KB of agent reference and their own evals",
          "Public plan prices with per-unit overage for API requests and storage",
          "Events audit log in the developer console since 30 September 2026"
        ],
        "weaknesses": [
          "One full-access secret key per environment, with no scoped or read-only key",
          "Invalid writes return HTTP 200 with an errors object",
          "Rate-limit numbers aren't published",
          "No llms.txt, OpenAPI, security.txt or disclosure policy",
          "No DPA, subprocessor list or deprecation policy found"
        ],
        "agentNotes": [
          "Call GET /:models once and cache it. It's the ground truth for custom fields",
          "Check `result.errors` after every write. A failed validation still returns 200",
          "Use `$set` to replace an array. A plain PUT merges arrays by element id and never shrinks them",
          "Use an sk_test_ key while testing. A bare sk_ prefix is live",
          "Keep `expand` and `include` small. Each level past the first three points adds rate-limit weight"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.1
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 82,
          "payments": 25,
          "reliability": 63,
          "schema": 68,
          "security": 35,
          "transparency": 31
        },
        "provenanceScore": 71
      },
      "connect": {
        "http": "curl \"https://api.swell.store/products?limit=5\" -u \"$SWELL_STORE_ID:$SWELL_SECRET_KEY\""
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/swell"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 29,
          "note": "billed yearly, up to $50K sales a year, 100K API requests a month"
        },
        {
          "item": "Basic",
          "unit": "month",
          "usd": 79,
          "note": "billed yearly, up to $250K sales, 500K API requests"
        },
        {
          "item": "Standard",
          "unit": "month",
          "usd": 299,
          "note": "billed yearly, up to $1M sales, 2M API requests"
        },
        {
          "item": "Unlimited",
          "unit": "month",
          "usd": 2250,
          "note": "billed yearly, up to $5M sales"
        },
        {
          "item": "Fee above Starter ceiling",
          "unit": "pct",
          "usd": 2,
          "note": "on sales over $50K in a trailing 12 months"
        },
        {
          "item": "Fee above Basic ceiling",
          "unit": "pct",
          "usd": 1.5,
          "note": "on sales over $250K"
        },
        {
          "item": "Fee above Standard ceiling",
          "unit": "pct",
          "usd": 1,
          "note": "on sales over $1M"
        },
        {
          "item": "Fee above Unlimited ceiling",
          "unit": "pct",
          "usd": 0.4,
          "note": "on sales over $5M"
        },
        {
          "item": "Extra API requests",
          "unit": "1k-requests",
          "usd": 0.05,
          "note": "$5 per 100K over the plan quota"
        }
      ],
      "provenance": {
        "legalEntity": "Swell Commerce Corp.",
        "domain": "swell.is",
        "domainRegistered": "2019-09-06",
        "endpointOnVendorDomain": false,
        "terms": "https://www.swell.is/legal/terms-of-service",
        "privacy": "https://www.swell.is/legal/privacy-policy",
        "statusPage": "https://status.swell.store/",
        "changelog": "https://www.swell.is/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The API runs on api.swell.store, Swell's older domain, not swell.is.",
          "/.well-known/security.txt redirects to itself, so no file could be read."
        ],
        "score": 71
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/swell.json",
      "live": {
        "slug": "swell",
        "probe": {
          "target": "https://api.swell.store",
          "method": "get",
          "lastAt": "2026-10-05T03:17:33.514848137Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 417,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 424,
          "p95ms24h": 489,
          "samples24h": 273,
          "samples30d": 1140,
          "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": 38,
              "ok": 38
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.swell.store",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-05T03:19:18.858877666Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "swell-js",
            "version": "5.9.1",
            "seenAt": "2026-10-04T16:41:14.900438488Z"
          },
          {
            "registry": "npm",
            "name": "swell-node",
            "version": "6.0.5",
            "seenAt": "2026-10-04T16:41:14.06948726Z"
          }
        ],
        "npmWeekly": 1318,
        "securityTxt": {
          "url": "https://swell.is/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-04T15:15:43.053806639Z"
        },
        "domain": {
          "domain": "swell.is",
          "registered": "2019-09-06",
          "source": "https://rdap.isnic.is/rdap/domain/swell.is",
          "checkedAt": "2026-10-04T13:09:13.981723691Z"
        },
        "pages": [
          {
            "url": "https://www.swell.is/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:21.610635571Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1629c2fb7a64"
          },
          {
            "url": "https://www.swell.is/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:27.807838884Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "32193c4b3a20"
          },
          {
            "url": "https://www.swell.is/legal/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:23.811781459Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fbd01fa046b6"
          },
          {
            "url": "https://www.swell.is/legal/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:52:25.803068539Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4090f2726940"
          }
        ],
        "updatedAt": "2026-10-05T03:19:18.858877666Z"
      }
    },
    "b": {
      "slug": "woocommerce",
      "name": "WooCommerce API + MCP",
      "vendor": "WooCommerce (Automattic)",
      "vendorUrl": "https://woocommerce.com",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Open-source commerce plugin for WordPress that you host yourself.",
      "url": "https://www.anchorterminal.com/tools/woocommerce",
      "markdownUrl": "https://www.anchorterminal.com/tools/woocommerce.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/woocommerce.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/woocommerce.json",
      "repo": "https://github.com/woocommerce/woocommerce",
      "license": "GPL-3.0",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@woocommerce/woocommerce-rest-api"
        },
        {
          "registry": "pypi",
          "name": "woocommerce"
        },
        {
          "registry": "npm",
          "name": "@automattic/mcp-wordpress-remote"
        }
      ],
      "auth": "mixed",
      "authNotes": "REST API keys (consumer key and secret) with read, write or read_write permission, sent as HTTP Basic over HTTPS. The Store API needs no key for browsing and uses a nonce or Cart-Token for cart and checkout calls. The MCP adapter takes a WordPress Application Password and acts with that user's capabilities. The deprecated /wp-json/woocommerce/mcp endpoint used REST keys.",
      "pricing": "free",
      "pricingNotes": "The plugin is free under GPL with no platform fee or revenue share. You pay for hosting, which Woo puts at $25 to $350 a month for most stores, extensions at $29 to $299 a year each, and card processing, about 2.9% + 30 cents per US transaction with WooPayments (https://woocommerce.com/pricing/).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402 in core. Payments go through whichever gateway the store installs.",
        "endpoints": []
      },
      "toolCount": 7,
      "popularity": {
        "githubStars": 10535,
        "npmWeekly": 63554,
        "pypiWeekly": 24657,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.woocommerce.com/docs/",
      "llmsTxt": "https://developer.woocommerce.com/llms.txt",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "local",
        "mcp",
        "llms-txt",
        "webhooks",
        "python",
        "typescript"
      ],
      "lastRelease": "2026-09-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 73,
        "grade": "BB",
        "agentReady": true,
        "rank": 64,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 2,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 82,
          "payments": 60,
          "reliability": 80,
          "schema": 77,
          "security": 55,
          "transparency": 76
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Free GPL software with no platform fee or revenue share. Uptime, speed and security depend on each store's host and plugins. No vendor status page.",
        "strengths": [
          "Free GPL software with no platform fee or revenue share",
          "Store API runs carts, coupons and checkout with a Cart-Token instead of a key",
          "Code examples in five languages on every REST endpoint, and official JavaScript and Python clients",
          "Automattic's HackerOne bug bounty covers WooCommerce core",
          "Six stable releases between 7 July and 22 September 2026, CI green on trunk"
        ],
        "weaknesses": [
          "Uptime, speed and security depend on each store's host and plugins. No vendor status page",
          "MCP is a developer preview behind the mcp_integration flag, with 7 abilities",
          "REST docs allow the consumer key and secret in the query string",
          "Store API rate limiting is off by default",
          "No OpenAPI file, so the contract only comes from a live store"
        ],
        "agentNotes": [
          "Create a REST key with read permission only for reporting tasks, and send it in the Authorization header, never the URL",
          "Get a Cart-Token with GET /wp-json/wc/store/v1/cart and send it on every cart and checkout call instead of a nonce",
          "Add `_fields=id,name,price` to REST calls to cut response size",
          "Page with per_page up to 100 and stop at X-WP-TotalPages",
          "Product delete only trashes unless you pass force true, so check the trash before assuming it's gone"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 73
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 82,
          "payments": 60,
          "reliability": 80,
          "schema": 77,
          "security": 55,
          "transparency": 86
        },
        "provenanceScore": 65
      },
      "connect": {
        "http": "curl \"https://yourstore.com/wp-json/wc/v3/products?per_page=5\" \\\n  -u \"$WC_CONSUMER_KEY:$WC_CONSUMER_SECRET\"",
        "claudeCode": "claude mcp add --env WP_API_URL=https://yourstore.com/wp-json/mcp/mcp-adapter-default-server --env WP_API_USERNAME=$WP_USER --env WP_API_PASSWORD=$WP_APP_PASSWORD woocommerce_store -- npx -y @automattic/mcp-wordpress-remote@latest",
        "config": {
          "mcpServers": {
            "woocommerce_store": {
              "args": [
                "-y",
                "@automattic/mcp-wordpress-remote@latest"
              ],
              "command": "npx",
              "env": {
                "WP_API_PASSWORD": "${WP_APP_PASSWORD}",
                "WP_API_URL": "https://yourstore.com/wp-json/mcp/mcp-adapter-default-server",
                "WP_API_USERNAME": "${WP_USER}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/woocommerce"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "WooCommerce plugin",
          "unit": "month",
          "usd": 0,
          "note": "GPL, you pay for your own hosting"
        },
        {
          "item": "WooPayments US card rate",
          "unit": "pct",
          "usd": 2.9,
          "note": "plus 30 cents per transaction, optional gateway"
        }
      ],
      "provenance": {
        "legalEntity": "WooCommerce, Inc.",
        "domain": "woocommerce.com",
        "domainRegistered": "2010-01-09",
        "endpointOnVendorDomain": false,
        "terms": "https://wordpress.com/tos/",
        "privacy": "https://automattic.com/privacy/",
        "statusPage": "",
        "changelog": "https://developer.woocommerce.com/changelog/",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "woocommerce.com/terms-conditions redirects to the WordPress.com terms, which name WooCommerce, Inc. as an Automattic company",
          "The API runs on each merchant's own domain"
        ],
        "score": 65
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/woocommerce.json",
      "live": {
        "slug": "woocommerce",
        "versions": [
          {
            "registry": "github",
            "name": "woocommerce/woocommerce",
            "version": "11.1.2",
            "released": "2026-09-22",
            "seenAt": "2026-10-04T16:44:11.870585394Z"
          },
          {
            "registry": "npm",
            "name": "@automattic/mcp-wordpress-remote",
            "version": "0.4.0",
            "seenAt": "2026-10-04T16:44:10.661056763Z"
          },
          {
            "registry": "npm",
            "name": "@woocommerce/woocommerce-rest-api",
            "version": "1.0.2",
            "seenAt": "2026-10-04T16:44:09.664004218Z"
          },
          {
            "registry": "pypi",
            "name": "woocommerce",
            "version": "3.0.0",
            "released": "2021-03-13",
            "seenAt": "2026-10-04T16:44:10.474860026Z"
          }
        ],
        "githubStars": 10537,
        "npmWeekly": 71235,
        "pypiWeekly": 25015,
        "securityTxt": {
          "url": "https://woocommerce.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:15:50.722559403Z"
        },
        "llmsTxt": {
          "url": "https://developer.woocommerce.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:22.091400501Z"
        },
        "domain": {
          "domain": "woocommerce.com",
          "registered": "2010-01-09",
          "source": "https://rdap.verisign.com/com/v1/domain/woocommerce.com",
          "checkedAt": "2026-10-04T13:03:39.15219252Z"
        },
        "pages": [
          {
            "url": "https://developer.woocommerce.com/changelog/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:42:40.450279292Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6bc1ef6a556d"
          },
          {
            "url": "https://woocommerce.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:53.977389561Z",
            "changedAt": "2026-10-04T15:48:53.977389561Z",
            "fingerprint": "642474c83179"
          },
          {
            "url": "https://automattic.com/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:22.375108976Z",
            "changedAt": "2026-10-04T15:41:22.375108976Z",
            "fingerprint": "8e713c1d11a4"
          },
          {
            "url": "https://wordpress.com/tos/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:48:54.340545399Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e46059725bd8"
          }
        ],
        "updatedAt": "2026-10-04T16:44:11.870585394Z"
      }
    },
    "summary": "WooCommerce API + MCP has a score of 73 (BB) against Swell's 55.1 (C). Both do commerce products. The largest gap is payments \u0026 pricing, 35 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/swell-vs-woocommerce",
    "json": "https://www.anchorterminal.com/compare/swell-vs-woocommerce.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/swell-vs-woocommerce.md",
    "slim": "https://www.anchorterminal.com/compare/swell-vs-woocommerce.min.md"
  },
  "markdown": "WooCommerce API + MCP has a score of 73 (BB) against Swell's 55.1 (C). Both do commerce products. The largest gap is payments \u0026 pricing, 35 points.\n\n- Swell: grade C, 55.1/100, rank #317 of 452. Markdown https://www.anchorterminal.com/tools/swell.md · JSON https://www.anchorterminal.com/api/v1/tools/swell.json\n- WooCommerce API + MCP: grade BB, 73/100, rank #64 of 452. Markdown https://www.anchorterminal.com/tools/woocommerce.md · JSON https://www.anchorterminal.com/api/v1/tools/woocommerce.json\n\n## Which one, for what\n\nPick Swell for nothing in particular (no category where it leads by five points or more).\n\nPick WooCommerce API + MCP for reliability (+17), schema \u0026 documentation (+9), agent ergonomics (+18), security \u0026 auth (+20), payments \u0026 pricing (+35), transparency \u0026 trust (+25).\n\n## Score by category\n\n| Category | Weight | Swell | WooCommerce API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 63 | 80 | WooCommerce API + MCP +17 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 68 | 77 | WooCommerce API + MCP +9 |\n| Agent ergonomics | 13% (16.2 this run) | 65 | 83 | WooCommerce API + MCP +18 |\n| Security \u0026 auth | 14% (17.5 this run) | 35 | 55 | WooCommerce API + MCP +20 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 25 | 60 | WooCommerce API + MCP +35 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 82 | even |\n| Transparency \u0026 trust | 7% (8.8 this run) | 51 | 76 | WooCommerce API + MCP +25 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **55.1 · C** | **73 · BB** | |\n\n## Facts side by side\n\n| Fact | Swell | WooCommerce API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Swell | WooCommerce (Automattic) |\n| Hosted endpoint | `https://api.swell.store` | no (local only) |\n| Transports | HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | API key | OAuth or key |\n| Pricing | Paid | Free |\n| x402 | no | no |\n| Licence | none | GPL-3.0 |\n| Tools exposed | none | 7 |\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-22 |\n| Popularity | 4.5k npm/wk | 11k stars, 64k npm/wk, 25k PyPI/wk |\n| Agent reviews | 2.5/5 (2) | 3.5/5 (2) |\n\n## Verdicts\n\n**Swell.** Live /:models schema with field types and descriptions for every store. One full-access secret key per environment, with no scoped or read-only key.\n\n**WooCommerce API + MCP.** Free GPL software with no platform fee or revenue share. Uptime, speed and security depend on each store's host and plugins. No vendor status page.\n\n## Before you call either\n\n### Swell\n\n1. Call GET /:models once and cache it. It's the ground truth for custom fields\n2. Check `result.errors` after every write. A failed validation still returns 200\n3. Use `$set` to replace an array. A plain PUT merges arrays by element id and never shrinks them\n4. Use an sk_test_ key while testing. A bare sk_ prefix is live\n5. Keep `expand` and `include` small. Each level past the first three points adds rate-limit weight\n\n### WooCommerce API + MCP\n\n1. Create a REST key with read permission only for reporting tasks, and send it in the Authorization header, never the URL\n2. Get a Cart-Token with GET /wp-json/wc/store/v1/cart and send it on every cart and checkout call instead of a nonce\n3. Add `_fields=id,name,price` to REST calls to cut response size\n4. Page with per_page up to 100 and stop at X-WP-TotalPages\n5. Product delete only trashes unless you pass force true, so check the trash before assuming it's gone\n\n## Other comparisons with Swell or WooCommerce API + MCP\n\n- [BigCommerce API + MCP vs Swell](https://www.anchorterminal.com/compare/bigcommerce-vs-swell.md)\n- [BigCommerce API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/bigcommerce-vs-woocommerce.md)\n- [Commerce Layer API + MCP vs Swell](https://www.anchorterminal.com/compare/commerce-layer-vs-swell.md)\n- [Commerce Layer API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/commerce-layer-vs-woocommerce.md)\n- [Elastic Path API + MCP vs Swell](https://www.anchorterminal.com/compare/elastic-path-vs-swell.md)\n- [Elastic Path API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/elastic-path-vs-woocommerce.md)\n- [Medusa API + MCP vs Swell](https://www.anchorterminal.com/compare/medusa-vs-swell.md)\n- [Medusa API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/medusa-vs-woocommerce.md)\n- [Saleor API + MCP vs Swell](https://www.anchorterminal.com/compare/saleor-vs-swell.md)\n- [Saleor API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/saleor-vs-woocommerce.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 Swell](https://www.anchorterminal.com/compare/snipcart-vs-swell.md)\n- [Snipcart API + MCP vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/snipcart-vs-woocommerce.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": "Swell vs WooCommerce API + MCP",
        "url": ""
      }
    ],
    "description": "WooCommerce API + MCP has a score of 73 (BB) against Swell's 55.1 (C). Both do commerce products. The largest gap is payments \u0026 pricing, 35 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Swell C 55.1",
      "WooCommerce API + MCP BB 73",
      "scores"
    ],
    "h1": "Swell vs WooCommerce API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-swell-vs-woocommerce.png",
    "path": "/compare/swell-vs-woocommerce",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Swell vs WooCommerce API + MCP for AI agents, C 55.1 vs BB 73",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/swell-vs-woocommerce"
  },
  "tokens": {
    "markdown": 1550,
    "slim": 330
  },
  "version": 1
}
