{
  "data": {
    "a": {
      "slug": "commercetools",
      "name": "commercetools",
      "vendor": "commercetools GmbH",
      "vendorUrl": "https://commercetools.com",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Headless commerce platform from commercetools GmbH in Munich, with HTTP and GraphQL APIs for catalogue, carts, checkout, orders and customers. Agents reach it through the API, four SDKs or a managed MCP server per project.",
      "url": "https://www.anchorterminal.com/tools/commercetools",
      "markdownUrl": "https://www.anchorterminal.com/tools/commercetools.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/commercetools.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/commercetools.json",
      "repo": "https://github.com/commercetools/commercetools-api-reference",
      "license": "Proprietary service under the commercetools Master Service Agreement. The API specifications are public, the SDKs are MIT (TypeScript, PHP) or Apache 2.0 (Java, .NET) and Commerce MCP is MIT",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.{region}.commercetools.com/{projectKey}",
      "packages": [
        {
          "registry": "npm",
          "name": "@commercetools/platform-sdk"
        },
        {
          "registry": "npm",
          "name": "@commercetools/commerce-mcp"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth 2.0. A person creates an API Client in the Merchant Centre (or through the API Clients API) with chosen scopes, and the secret is shown once. The client credentials flow at https://auth.{region}.commercetools.com/oauth/token returns a Bearer token valid for 48 hours by default. Scopes are view or manage per resource and per store, and `manage_project` grants everything. Password, anonymous-session and refresh flows exist for shoppers. A managed MCP server takes a token scoped to `mcp:{projectKey}:{mcpServerKey}` (30 days at most), OAuth client credentials discovery, or a browser sign-in with an Identity account. Access is self-serve through the trial sign-up form.",
      "pricing": "paid",
      "pricingNotes": "No public prices. The pricing page describes order-based pricing and sends buyers to sales, and the product is also sold through the AWS and Google Cloud marketplaces. A 60-day trial has every core commerce API and the Merchant Centre, needs no card and does not convert automatically, so an agent can start without a contract. InStore, Frontend and the agent products are not in the trial (https://commercetools.com/free-trial, checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, llms.txt or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 221261,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.commercetools.com/api/",
      "llmsTxt": "https://docs.commercetools.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/commercetools/commercetools-api-reference/main/oas/api/openapi.yaml",
      "capabilities": [
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.orders",
        "commerce.headless"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "closed-source",
        "mcp",
        "oauth",
        "openapi",
        "graphql",
        "llms-txt",
        "typescript",
        "java",
        "php",
        "dotnet",
        "webhooks",
        "sales-led",
        "status-page",
        "sla",
        "soc2"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71.3,
        "grade": "BB",
        "agentReady": true,
        "rank": 135,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 85,
          "payments": 20,
          "reliability": 73,
          "schema": 86,
          "security": 70,
          "transparency": 81
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A public OpenAPI file with 822 operations, per-resource OAuth scopes and a managed MCP server whose tools an administrator selects per agent. Prices are quoted by sales only, and the HTTP API publishes no platform-wide rate limit. A 60-day trial needs no card.",
        "bestFor": "Enterprises that already run or plan a composable commerce stack and want agents working across catalogue, pricing, carts and orders under scoped credentials.",
        "strengths": [
          "Public OpenAPI 3.0 file with 822 operations, plus RAML, a GraphQL schema, llms.txt and Markdown copies of every docs page",
          "OAuth 2.0 API Clients with view and manage scopes per resource, a token revocation endpoint, and no tokens accepted in URL parameters",
          "Managed MCP server per agent with a chosen tool list, field filtering and redaction, and readOnlyHint and destructiveHint on every tool since 1 October 2026",
          "99.9 per cent monthly availability SLA with service credits, published in the docs",
          "60-day trial with every core commerce API and no card"
        ],
        "weaknesses": [
          "No public price. The pricing page describes order-based pricing and sends buyers to sales",
          "The docs state that the HTTP API has no single documented platform-wide rate limit",
          "Managed MCP Servers, AI Hub and Platform Insights are excluded from the standard SLA",
          "API-wide change tracking needs the paid Audit Log Premium add-on. Audit Log Basic records Merchant Centre changes only",
          "No security.txt and no bug bounty found, and audit reports are released under NDA"
        ],
        "agentNotes": [
          "Use the auth and API hosts for the project's region, such as auth.europe-west1.gcp.commercetools.com and api.europe-west1.gcp.commercetools.com. There are five regions",
          "Send the resource's current `version` with every update or delete. On 409 ConcurrentModification, re-read the resource and retry only if the change is still needed",
          "Retry 502 and 503 with exponential backoff from 200 ms, honour Retry-After, and check Content-Type before parsing an error body",
          "For MCP, ask for an API Client scoped to `mcp:{projectKey}:{mcpServerKey}` and a server limited to the tools the task needs, not `all`",
          "Keep page size at or under 500 and offset at or under 10,000. Product Search returns at most 100 per request"
        ],
        "metrics": {
          "kind": "remote",
          "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": 71.3
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 85,
          "payments": 20,
          "reliability": 73,
          "schema": 86,
          "security": 70,
          "transparency": 75
        },
        "provenanceScore": 86
      },
      "connect": {
        "install": "npm install @commercetools/platform-sdk",
        "http": "curl https://{auth_host}/oauth/token -X POST \\\n  --basic --user \"{clientId}:{clientSecret}\" \\\n  -d \"grant_type=client_credentials\u0026scope=manage_project:{projectKey}\"\ncurl https://api.{region}.commercetools.com/{projectKey}/ \\\n  -X GET \\\n  -H \"Authorization: Bearer ${BEARER_TOKEN}\"",
        "config": {
          "mcpServers": {
            "managed-mcp-servers": {
              "headers": {
                "Authorization": "Bearer \u003cyour-ctp-token\u003e"
              },
              "type": "http",
              "url": "\u003cyour-mcp-server-url\u003e"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/commerce.products",
        "tool": "https://letme.dev/commercetools"
      },
      "area": "business",
      "provenance": {
        "legalEntity": "commercetools GmbH",
        "domain": "commercetools.com",
        "domainRegistered": "2002-05-13",
        "endpointOnVendorDomain": true,
        "terms": "https://commercetools.com/msa",
        "privacy": "https://commercetools.com/privacy",
        "statusPage": "https://status.commercetools.com",
        "changelog": "https://docs.commercetools.com/docs/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The imprint names commercetools GmbH, Adams-Lehmann-Str. 44, 80797 Munich, Amtsgericht München HRB 161496.",
          "The Master Service Agreement at commercetools.com/msa governs paid use once an Order Form is signed. Trial use falls under the 60 Days Trial Agreement at commercetools.com/trial-agreement, last updated 24 July 2024.",
          "The privacy notice covers the websites in section III and customers' use of the service in section IV. Data that customers store in the platform falls under the DPA at commercetools.com/dpa, last updated 1 October 2024.",
          "commercetools.com/.well-known/security.txt and docs.commercetools.com/.well-known/security.txt both return 404.",
          "API, auth and MCP hosts are subdomains of commercetools.com for each region. RDAP gives a registration date of 2002-05-13 for commercetools.com."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/commercetools.json",
      "live": {
        "slug": "commercetools",
        "probe": {
          "target": "https://api.{region}.commercetools.com/{projectKey}",
          "method": "get",
          "lastAt": "2026-10-14T09:41:46.98022009Z",
          "lastOk": false,
          "lastStatus": 0,
          "lastMs": 0,
          "lastNote": "invalid character \"{\" in host name",
          "authRequired": false,
          "uptime24h": 0,
          "uptime30d": 0,
          "p50ms24h": 0,
          "p95ms24h": 0,
          "samples24h": 248,
          "samples30d": 1409,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 70,
              "ok": 0
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 0
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 0
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 0
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 0
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 0
            },
            {
              "date": "2026-10-14",
              "probes": 100,
              "ok": 0
            }
          ],
          "outages": [
            {
              "start": "2026-10-08T17:31:33.341731081Z",
              "end": "0001-01-01T00:00:00Z",
              "note": "invalid character \"{\" in host name"
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.commercetools.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-14T08:52:59.395518085Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@commercetools/commerce-mcp",
            "version": "4.2.2",
            "seenAt": "2026-10-13T22:50:30.177549922Z"
          },
          {
            "registry": "npm",
            "name": "@commercetools/platform-sdk",
            "version": "9.7.0",
            "seenAt": "2026-10-13T22:50:28.091143891Z"
          }
        ],
        "githubStars": 66,
        "npmWeekly": 180562,
        "securityTxt": {
          "url": "https://commercetools.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-13T15:45:00.735211431Z"
        },
        "llmsTxt": {
          "url": "https://docs.commercetools.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:11:17.721993867Z"
        },
        "domain": {
          "domain": "commercetools.com",
          "registered": "2002-05-13",
          "source": "https://rdap.verisign.com/com/v1/domain/commercetools.com",
          "checkedAt": "2026-10-11T13:25:14.494088317Z"
        },
        "pages": [
          {
            "url": "https://docs.commercetools.com/docs/release-notes",
            "kind": "changelog",
            "status": 404,
            "checkedAt": "2026-10-13T20:14:29.171282724Z",
            "changedAt": "0001-01-01T00:00:00Z"
          },
          {
            "url": "https://commercetools.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-13T20:11:52.180200303Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "58be3463d4f5"
          },
          {
            "url": "https://commercetools.com/msa",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-13T20:11:49.865439797Z",
            "changedAt": "2026-10-13T20:11:49.865439797Z",
            "fingerprint": "2a51572b423a"
          }
        ],
        "updatedAt": "2026-10-14T09:41:46.98022009Z"
      }
    },
    "answer": "commercetools scores 71.3 (BB) on agent readiness against Fabric's 43.7 (E), and leads in every scored category.",
    "b": {
      "slug": "fabric",
      "name": "Fabric",
      "vendor": "Commerce Fabric, Inc.",
      "vendorUrl": "https://fabric.inc",
      "kind": "http-api",
      "category": "commerce",
      "summary": "Commerce software from Commerce Fabric, Inc. for brands and retailers, now sold as Merchandising Studio (product data for AI shopping) and Dropship. Its REST APIs, documented as v3, cover orders, inventory, catalogue, pricing, carts and dropship.",
      "url": "https://www.anchorterminal.com/tools/fabric",
      "markdownUrl": "https://www.anchorterminal.com/tools/fabric.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fabric.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fabric.json",
      "license": "Proprietary SaaS under Fabric's Terms and Conditions (last updated 1 January 2026) and an order form",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.fabric.inc/v3",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Server-to-server calls use a System App with the OpenID Connect client credentials flow. A merchant admin creates the app in the Copilot console, picks one role (Admin, Developer Admin, Developer Viewer, Editor, Viewer or a module editor) and receives a client ID and secret. System tokens last 10 minutes and have no refresh token. User Apps use the authorisation code flow with PKCE for shoppers, with 30-minute user tokens and rotating refresh tokens. Every call also carries an x-fabric-tenant-id header. The Product Agent API uses its own client credentials token, valid for 60 minutes.",
      "pricing": "paid",
      "pricingNotes": "No public prices. fabric.inc/pricing returns 404, the developer docs say to reach out for a trial account, and the sites link to a demo request. Services run under an order form. The terms say beta services are free of charge (checked 14 October 2026).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in llms.txt, the 69 OpenAPI files listed there, the terms or the site pages read on 14 October 2026.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://developer.fabric.inc/v3/home",
      "llmsTxt": "https://developer.fabric.inc/llms.txt",
      "openapi": "https://developer.fabric.inc/openapi/orders/v3/orders.openapi.yaml",
      "capabilities": [
        "commerce.orders",
        "commerce.products",
        "commerce.cart",
        "commerce.checkout",
        "commerce.headless"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "closed-source",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "sales-led",
        "sla",
        "soc2"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 43.7,
        "grade": "E",
        "agentReady": false,
        "rank": 949,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 18,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 57,
          "maintenance": 15,
          "payments": 0,
          "reliability": 23,
          "schema": 79,
          "security": 62,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Public OpenAPI files for about 980 operations, llms.txt, client credentials with role-limited system apps, and a published 99.9 per cent SLA. Access needs a sales contract, with no public price or self-serve trial. The commerce docs are labelled legacy, the newest release notes date from July 2025, and no status page was found.",
        "bestFor": "A merchant-side API for retailers already on Fabric's order management, catalogue or dropship products.",
        "strengths": [
          "69 public OpenAPI files covering orders, inventory, catalogue, carts, pricing and dropship, listed in llms.txt",
          "System apps take one of ten roles, including Viewer and module-only editors, and tokens expire after 10 minutes",
          "Standardised JSON error codes with service and endpoint context for the Orders and Inventory APIs",
          "Published SLA of 99.9 per cent monthly availability with service credits up to 40 per cent"
        ],
        "weaknesses": [
          "No public price, free tier or self-serve signup. A trial account is arranged with Fabric",
          "The v3 and v2 commerce docs are labelled legacy, and the newest dated release notes are from July 2025",
          "No status page, rate-limit figures, Retry-After guidance or idempotency keys were found",
          "No official SDKs and no MCP server for the commerce APIs. The docs MCP server only searches documentation"
        ],
        "agentNotes": [
          "Get the tenant ID and a System App client ID and secret from the merchant's Copilot admin, with the narrowest role the task needs",
          "Request a new system token from {authURL}/v1/token every 10 minutes, since system apps receive no refresh token",
          "Send x-fabric-tenant-id on every call, and x-fabric-channel-id where the merchant sells in more than one channel",
          "Page order searches with offset and limit, because the default response returns 10 orders",
          "Read errorCode and context.endpoint in Orders and Inventory errors, and check for duplicates before retrying a write"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 43.7
          }
        ],
        "editorialScores": {
          "ergonomics": 57,
          "maintenance": 15,
          "payments": 0,
          "reliability": 23,
          "schema": 79,
          "security": 62,
          "transparency": 35
        },
        "provenanceScore": 74
      },
      "connect": {
        "http": "curl -X POST '{authURL}/v1/token' \\\n  -H 'content-type: application/x-www-form-urlencoded' \\\n  --data-urlencode 'grant_type=client_credentials' \\\n  --data-urlencode 'scope=s2s' \\\n  --data-urlencode 'client_id={clientId}' \\\n  --data-urlencode 'client_secret={clientSecret}'\ncurl https://api.fabric.inc/v3/product-attributes \\\n  -H 'Authorization: Bearer {token}' \\\n  -H 'x-fabric-tenant-id: {tenantId}'"
      },
      "letme": {
        "capability": "https://letme.dev/commerce.orders",
        "tool": "https://letme.dev/fabric"
      },
      "area": "business",
      "provenance": {
        "legalEntity": "Commerce Fabric, Inc.",
        "domain": "fabric.inc",
        "domainRegistered": "2019-08-08",
        "endpointOnVendorDomain": true,
        "terms": "https://fabric.inc/legal/terms-and-conditions",
        "privacy": "https://fabric.inc/legal/privacy-policy",
        "statusPage": "",
        "changelog": "https://developer.fabric.inc/v3/release-notes/july2025/release-summary",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The Terms and Conditions (last updated 1 January 2026) and the website terms of use name Commerce Fabric, Inc., 455 Market St. PMB 66768 Suite 1940, San Francisco, California 94105-2448. The site footer reads Fabric, Inc., San Francisco and Toronto.",
          "The privacy policy is dated 14 January 2021. The Data Processing Addendum it and the terms link at https://fabric.inc/data-processing-addendum returned 404, as did https://fabric.inc/api-license, named as the API licence in the OpenAPI files.",
          "No status page was found. status.fabric.inc does not resolve.",
          "fabric.inc/.well-known/security.txt and api.fabric.inc/.well-known/security.txt return 404.",
          "RDAP for fabric.inc gives a registration date of 8 August 2019 and GoDaddy.com, LLC as registrar."
        ],
        "score": 74
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/fabric.json",
      "live": {
        "slug": "fabric",
        "probe": {
          "target": "https://api.fabric.inc/v3",
          "method": "get",
          "lastAt": "2026-10-14T09:41:50.740446708Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 255,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 259,
          "p95ms24h": 360,
          "samples24h": 17,
          "samples30d": 17,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 17,
              "ok": 17
            }
          ]
        },
        "updatedAt": "2026-10-14T09:41:50.740446708Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "commercetools GmbH",
        "b": "Commerce Fabric, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.{region}.commercetools.com/{projectKey}",
        "b": "https://api.fabric.inc/v3",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the commercetools Master Service Agreement. The API specifications are public, the SDKs are MIT (TypeScript, PHP) or Apache 2.0 (Java, .NET) and Commerce MCP is MIT",
        "b": "Proprietary SaaS under Fabric's Terms and Conditions (last updated 1 January 2026) and an order form",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-07",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-01-01",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2021-01-14",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "221k npm/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "commercetools scores 71.3 (BB) on agent readiness against Fabric's 43.7 (E), and leads in every scored category.",
        "question": "Which is better for AI agents, commercetools or Fabric?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do commercetools and Fabric need an API key?"
      },
      {
        "answer": "Yes. commercetools has a hosted endpoint at https://api.{region}.commercetools.com/{projectKey} and Fabric at https://api.fabric.inc/v3.",
        "question": "Can an agent call commercetools and Fabric without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 73 against 23",
          "Schema \u0026 documentation, 86 against 79",
          "Agent ergonomics, 83 against 57",
          "Security \u0026 auth, 70 against 62",
          "Payments \u0026 pricing, 20 against 0",
          "Maintenance \u0026 community, 85 against 15",
          "Transparency \u0026 trust, 81 against 55"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine"
        ],
        "goodFor": "Enterprises that already run or plan a composable commerce stack and want agents working across catalogue, pricing, carts and orders under scoped credentials.",
        "slug": "commercetools",
        "watchFor": "No public price. The pricing page describes order-based pricing and sends buyers to sales"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "A merchant-side API for retailers already on Fabric's order management, catalogue or dropship products.",
        "slug": "fabric",
        "watchFor": "No public price, free tier or self-serve signup. A trial account is arranged with Fabric"
      }
    ],
    "job": {
      "capability": "commerce.products",
      "name": "Commerce catalogues"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-commerce-vs-commercetools.json",
        "title": "Adobe Commerce (Magento) vs commercetools",
        "url": "https://www.anchorterminal.com/compare/adobe-commerce-vs-commercetools"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-commerce-vs-fabric.json",
        "title": "Adobe Commerce (Magento) vs Fabric",
        "url": "https://www.anchorterminal.com/compare/adobe-commerce-vs-fabric"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentzon-vs-commercetools.json",
        "title": "Agentzon vs commercetools",
        "url": "https://www.anchorterminal.com/compare/agentzon-vs-commercetools"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentzon-vs-fabric.json",
        "title": "Agentzon vs Fabric",
        "url": "https://www.anchorterminal.com/compare/agentzon-vs-fabric"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bigcommerce-vs-commercetools.json",
        "title": "BigCommerce API + MCP vs commercetools",
        "url": "https://www.anchorterminal.com/compare/bigcommerce-vs-commercetools"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bigcommerce-vs-fabric.json",
        "title": "BigCommerce API + MCP vs Fabric",
        "url": "https://www.anchorterminal.com/compare/bigcommerce-vs-fabric"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commerce-layer-vs-commercetools.json",
        "title": "Commerce Layer API + MCP vs commercetools",
        "url": "https://www.anchorterminal.com/compare/commerce-layer-vs-commercetools"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commerce-layer-vs-fabric.json",
        "title": "Commerce Layer API + MCP vs Fabric",
        "url": "https://www.anchorterminal.com/compare/commerce-layer-vs-fabric"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-ecwid.json",
        "title": "commercetools vs Ecwid by Lightspeed",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-ecwid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-elastic-path.json",
        "title": "commercetools vs Elastic Path API + MCP",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-elastic-path"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-medusa.json",
        "title": "commercetools vs Medusa API + MCP",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-medusa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-saleor.json",
        "title": "commercetools vs Saleor API + MCP",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-saleor"
      },
      {
        "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-shopware.json",
        "title": "commercetools vs Shopware",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-shopware"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-snipcart.json",
        "title": "commercetools vs Snipcart API + MCP",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-snipcart"
      },
      {
        "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/commercetools-vs-square.json",
        "title": "commercetools vs Square",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-swell.json",
        "title": "commercetools vs Swell",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-swell"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-vendure.json",
        "title": "commercetools vs Vendure",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-vendure"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-wix.json",
        "title": "commercetools vs Wix Stores and eCommerce API",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-wix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/commercetools-vs-woocommerce.json",
        "title": "commercetools vs WooCommerce API + MCP",
        "url": "https://www.anchorterminal.com/compare/commercetools-vs-woocommerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ecwid-vs-fabric.json",
        "title": "Ecwid by Lightspeed vs Fabric",
        "url": "https://www.anchorterminal.com/compare/ecwid-vs-fabric"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elastic-path-vs-fabric.json",
        "title": "Elastic Path API + MCP vs Fabric",
        "url": "https://www.anchorterminal.com/compare/elastic-path-vs-fabric"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-medusa.json",
        "title": "Fabric vs Medusa API + MCP",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-medusa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-saleor.json",
        "title": "Fabric vs Saleor API + MCP",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-saleor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-shopify.json",
        "title": "Fabric vs Shopify API + MCP",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-shopify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-shopware.json",
        "title": "Fabric vs Shopware",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-shopware"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-snipcart.json",
        "title": "Fabric vs Snipcart API + MCP",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-snipcart"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-spree-commerce.json",
        "title": "Fabric vs Spree Commerce",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-spree-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-square.json",
        "title": "Fabric vs Square",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-square"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-swell.json",
        "title": "Fabric vs Swell",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-swell"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-vendure.json",
        "title": "Fabric vs Vendure",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-vendure"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-wix.json",
        "title": "Fabric vs Wix Stores and eCommerce API",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-wix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fabric-vs-woocommerce.json",
        "title": "Fabric vs WooCommerce API + MCP",
        "url": "https://www.anchorterminal.com/compare/fabric-vs-woocommerce"
      }
    ],
    "scores": [
      {
        "by": 50,
        "commercetools": 73,
        "edge": "commercetools",
        "fabric": 23,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 7,
        "commercetools": 86,
        "edge": "commercetools",
        "fabric": 79,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 26,
        "commercetools": 83,
        "edge": "commercetools",
        "fabric": 57,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 8,
        "commercetools": 70,
        "edge": "commercetools",
        "fabric": 62,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 20,
        "commercetools": 20,
        "edge": "commercetools",
        "fabric": 0,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 70,
        "commercetools": 85,
        "edge": "commercetools",
        "fabric": 15,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 26,
        "commercetools": 81,
        "edge": "commercetools",
        "fabric": 55,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "commercetools scores 71.3 (BB) on agent readiness against Fabric's 43.7 (E), and leads in every scored category. Both do commerce catalogues.",
    "verdicts": {
      "commercetools": "A public OpenAPI file with 822 operations, per-resource OAuth scopes and a managed MCP server whose tools an administrator selects per agent. Prices are quoted by sales only, and the HTTP API publishes no platform-wide rate limit. A 60-day trial needs no card.",
      "fabric": "Public OpenAPI files for about 980 operations, llms.txt, client credentials with role-limited system apps, and a published 99.9 per cent SLA. Access needs a sales contract, with no public price or self-serve trial. The commerce docs are labelled legacy, the newest release notes date from July 2025, and no status page was found."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/commercetools-vs-fabric",
    "json": "https://www.anchorterminal.com/compare/commercetools-vs-fabric.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/commercetools-vs-fabric.md",
    "slim": "https://www.anchorterminal.com/compare/commercetools-vs-fabric.min.md"
  },
  "markdown": "commercetools scores 71.3 (BB) on agent readiness against Fabric's 43.7 (E), and leads in every scored category. Both do commerce catalogues.\n\n- commercetools: grade BB, 71.3/100, rank #135 of 1076. Markdown https://www.anchorterminal.com/tools/commercetools.md · JSON https://www.anchorterminal.com/api/v1/tools/commercetools.json\n- Fabric: grade E, 43.7/100, rank #949 of 1076. Markdown https://www.anchorterminal.com/tools/fabric.md · JSON https://www.anchorterminal.com/api/v1/tools/fabric.json\n- Best commerce platforms and checkout APIs for AI agents: https://www.anchorterminal.com/best/commerce/index.md\n- All 171 commerce comparisons: https://www.anchorterminal.com/compare/commerce/index.md\n\n## Which one, for what\n\n### commercetools (BB)\n\nGood for: Enterprises that already run or plan a composable commerce stack and want agents working across catalogue, pricing, carts and orders under scoped credentials.\n\nAhead on:\n- Reliability, 73 against 23\n- Schema \u0026 documentation, 86 against 79\n- Agent ergonomics, 83 against 57\n- Security \u0026 auth, 70 against 62\n- Payments \u0026 pricing, 20 against 0\n- Maintenance \u0026 community, 85 against 15\n- Transparency \u0026 trust, 81 against 55\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n\nWatch for: No public price. The pricing page describes order-based pricing and sends buyers to sales\n\n### Fabric (E)\n\nGood for: A merchant-side API for retailers already on Fabric's order management, catalogue or dropship products.\n\nWatch for: No public price, free tier or self-serve signup. A trial account is arranged with Fabric\n\n\n## Score by category\n\n| Category | Weight | commercetools | Fabric | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 23 | commercetools +50 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 79 | commercetools +7 |\n| Agent ergonomics | 13% (16.2 this run) | 83 | 57 | commercetools +26 |\n| Security \u0026 auth | 14% (17.5 this run) | 70 | 62 | commercetools +8 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 0 | commercetools +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 15 | commercetools +70 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 81 | 55 | commercetools +26 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **71.3 · BB** | **43.7 · E** | |\n\n## Facts side by side\n\n| Fact | commercetools | Fabric |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | commercetools GmbH | Commerce Fabric, Inc. |\n| Hosted endpoint | `https://api.{region}.commercetools.com/{projectKey}` | `https://api.fabric.inc/v3` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under the commercetools Master Service Agreement. The API specifications are public, the SDKs are MIT (TypeScript, PHP) or Apache 2.0 (Java, .NET) and Commerce MCP is MIT | Proprietary SaaS under Fabric's Terms and Conditions (last updated 1 January 2026) and an order form |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-07 | none |\n| Terms last updated | no date given | 2026-01-01 |\n| Privacy policy last updated | no date given | 2021-01-14 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 221k npm/wk | none |\n\n## Verdicts\n\n**commercetools.** A public OpenAPI file with 822 operations, per-resource OAuth scopes and a managed MCP server whose tools an administrator selects per agent. Prices are quoted by sales only, and the HTTP API publishes no platform-wide rate limit. A 60-day trial needs no card.\n\n**Fabric.** Public OpenAPI files for about 980 operations, llms.txt, client credentials with role-limited system apps, and a published 99.9 per cent SLA. Access needs a sales contract, with no public price or self-serve trial. The commerce docs are labelled legacy, the newest release notes date from July 2025, and no status page was found.\n\n## Before you call either\n\n### commercetools\n\n1. Use the auth and API hosts for the project's region, such as auth.europe-west1.gcp.commercetools.com and api.europe-west1.gcp.commercetools.com. There are five regions\n2. Send the resource's current `version` with every update or delete. On 409 ConcurrentModification, re-read the resource and retry only if the change is still needed\n3. Retry 502 and 503 with exponential backoff from 200 ms, honour Retry-After, and check Content-Type before parsing an error body\n4. For MCP, ask for an API Client scoped to `mcp:{projectKey}:{mcpServerKey}` and a server limited to the tools the task needs, not `all`\n5. Keep page size at or under 500 and offset at or under 10,000. Product Search returns at most 100 per request\n\n### Fabric\n\n1. Get the tenant ID and a System App client ID and secret from the merchant's Copilot admin, with the narrowest role the task needs\n2. Request a new system token from {authURL}/v1/token every 10 minutes, since system apps receive no refresh token\n3. Send x-fabric-tenant-id on every call, and x-fabric-channel-id where the merchant sells in more than one channel\n4. Page order searches with offset and limit, because the default response returns 10 orders\n5. Read errorCode and context.endpoint in Orders and Inventory errors, and check for duplicates before retrying a write\n\n## Questions\n\n### Which is better for AI agents, commercetools or Fabric?\n\ncommercetools scores 71.3 (BB) on agent readiness against Fabric's 43.7 (E), and leads in every scored category.\n\n### Do commercetools and Fabric need an API key?\n\nBoth use an OAuth sign-in.\n\n### Can an agent call commercetools and Fabric without installing anything?\n\nYes. commercetools has a hosted endpoint at https://api.{region}.commercetools.com/{projectKey} and Fabric at https://api.fabric.inc/v3.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/commercetools-vs-fabric.json, and with the fewest tokens: https://www.anchorterminal.com/compare/commercetools-vs-fabric.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"commercetools\", \"b\": \"fabric\"}`. From a terminal: `anchor compare commercetools fabric`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/commercetools.json and https://www.anchorterminal.com/api/v1/tools/fabric.json\n\n## Other comparisons with commercetools or Fabric\n\n- [Adobe Commerce (Magento) vs commercetools](https://www.anchorterminal.com/compare/adobe-commerce-vs-commercetools.md)\n- [Adobe Commerce (Magento) vs Fabric](https://www.anchorterminal.com/compare/adobe-commerce-vs-fabric.md)\n- [Agentzon vs commercetools](https://www.anchorterminal.com/compare/agentzon-vs-commercetools.md)\n- [Agentzon vs Fabric](https://www.anchorterminal.com/compare/agentzon-vs-fabric.md)\n- [BigCommerce API + MCP vs commercetools](https://www.anchorterminal.com/compare/bigcommerce-vs-commercetools.md)\n- [BigCommerce API + MCP vs Fabric](https://www.anchorterminal.com/compare/bigcommerce-vs-fabric.md)\n- [Commerce Layer API + MCP vs commercetools](https://www.anchorterminal.com/compare/commerce-layer-vs-commercetools.md)\n- [Commerce Layer API + MCP vs Fabric](https://www.anchorterminal.com/compare/commerce-layer-vs-fabric.md)\n- [commercetools vs Ecwid by Lightspeed](https://www.anchorterminal.com/compare/commercetools-vs-ecwid.md)\n- [commercetools vs Elastic Path API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-elastic-path.md)\n- [commercetools vs Medusa API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-medusa.md)\n- [commercetools vs Saleor API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-saleor.md)\n- [commercetools vs Shopify API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-shopify.md)\n- [commercetools vs Shopware](https://www.anchorterminal.com/compare/commercetools-vs-shopware.md)\n- [commercetools vs Snipcart API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-snipcart.md)\n- [commercetools vs Spree Commerce](https://www.anchorterminal.com/compare/commercetools-vs-spree-commerce.md)\n- [commercetools vs Square](https://www.anchorterminal.com/compare/commercetools-vs-square.md)\n- [commercetools vs Swell](https://www.anchorterminal.com/compare/commercetools-vs-swell.md)\n- [commercetools vs Vendure](https://www.anchorterminal.com/compare/commercetools-vs-vendure.md)\n- [commercetools vs Wix Stores and eCommerce API](https://www.anchorterminal.com/compare/commercetools-vs-wix.md)\n- [commercetools vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/commercetools-vs-woocommerce.md)\n- [Ecwid by Lightspeed vs Fabric](https://www.anchorterminal.com/compare/ecwid-vs-fabric.md)\n- [Elastic Path API + MCP vs Fabric](https://www.anchorterminal.com/compare/elastic-path-vs-fabric.md)\n- [Fabric vs Medusa API + MCP](https://www.anchorterminal.com/compare/fabric-vs-medusa.md)\n- [Fabric vs Saleor API + MCP](https://www.anchorterminal.com/compare/fabric-vs-saleor.md)\n- [Fabric vs Shopify API + MCP](https://www.anchorterminal.com/compare/fabric-vs-shopify.md)\n- [Fabric vs Shopware](https://www.anchorterminal.com/compare/fabric-vs-shopware.md)\n- [Fabric vs Snipcart API + MCP](https://www.anchorterminal.com/compare/fabric-vs-snipcart.md)\n- [Fabric vs Spree Commerce](https://www.anchorterminal.com/compare/fabric-vs-spree-commerce.md)\n- [Fabric vs Square](https://www.anchorterminal.com/compare/fabric-vs-square.md)\n- [Fabric vs Swell](https://www.anchorterminal.com/compare/fabric-vs-swell.md)\n- [Fabric vs Vendure](https://www.anchorterminal.com/compare/fabric-vs-vendure.md)\n- [Fabric vs Wix Stores and eCommerce API](https://www.anchorterminal.com/compare/fabric-vs-wix.md)\n- [Fabric vs WooCommerce API + MCP](https://www.anchorterminal.com/compare/fabric-vs-woocommerce.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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": "commercetools vs Fabric",
        "url": ""
      }
    ],
    "description": "commercetools scores 71.3 (BB) to Fabric's 43.7 (E) for commerce catalogues. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "commercetools BB 71.3",
      "Fabric E 43.7",
      "scores"
    ],
    "h1": "commercetools vs Fabric",
    "image": "https://www.anchorterminal.com/assets/og/compare-commercetools-vs-fabric.png",
    "path": "/compare/commercetools-vs-fabric",
    "published": "2026-10-01",
    "section": "tools",
    "title": "commercetools vs Fabric for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/commercetools-vs-fabric"
  },
  "tokens": {
    "markdown": 2750,
    "slim": 630
  },
  "version": 1
}
