{
  "data": {
    "a": {
      "slug": "sendcloud",
      "name": "Sendcloud",
      "vendor": "Sendcloud B.V.",
      "vendorUrl": "https://www.sendcloud.com",
      "kind": "http-api",
      "category": "shipping",
      "summary": "Shipping platform for European online shops from Sendcloud B.V. in Eindhoven. Its API v3 and hosted MCP server quote carrier rates, create labels, validate addresses, track parcels and handle returns across the carriers an account has enabled.",
      "url": "https://www.anchorterminal.com/tools/sendcloud",
      "markdownUrl": "https://www.anchorterminal.com/tools/sendcloud.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/sendcloud.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/sendcloud.json",
      "license": "Proprietary service under Sendcloud's terms and conditions",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://mcp.sendcloud.com/mcp",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Self-serve. A person signs up at account.sendcloud.com, adds an invoice and sender address, then creates a Sendcloud API integration in the panel, which issues a public and secret key pair. The pair works as HTTP Basic or is exchanged at https://account.sendcloud.com/oauth2/token for a one-hour Bearer token (client credentials, scope `api`). The MCP server uses an OAuth 2.0 sign-in at account.sendcloud.com, found through RFC 9728 metadata, with the same single scope. No partner or sales approval is needed for API v3.",
      "pricing": "freemium",
      "pricingNotes": "Free plan at €0 for up to 20 parcels a month at Sendcloud's carrier rates, and a 14-day trial of paid plans with no card per the pricing page. Lite is €28 a month plus €0.10 a label, Growth €87 plus €0.09, Premium €175 plus €0.08, Pro €639 plus €0.07, Enterprise on request, with 20 per cent off for yearly billing. Carrier postage is extra. There is no sandbox, but 50 Unstamped letter test labels are free. The pricing table has an API access row whose per-plan marks we couldn't read (https://www.sendcloud.com/pricing/).",
      "priceSummary": "$31.30 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the OpenAPI specs or the pricing page (checked 2026-10-07).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-07"
      },
      "docsUrl": "https://sendcloud.dev",
      "llmsTxt": "https://sendcloud.dev/llms.txt",
      "openapi": "https://sendcloud.dev/.openapi/v3/shipments/openapi.yaml",
      "capabilities": [
        "shipping.rates",
        "shipping.labels",
        "shipping.tracking",
        "shipping.address-validation",
        "shipping.returns"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "oauth",
        "api-key",
        "openapi",
        "llms-txt",
        "webhooks",
        "status-page",
        "europe",
        "iso27001"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62,
        "grade": "B",
        "agentReady": false,
        "rank": 314,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 67,
          "payments": 37,
          "reliability": 68,
          "schema": 89,
          "security": 49,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-07"
        },
        "negative": -3,
        "negativeNotes": [
          "21 and 25 September 2026. The API v3 changelog records `insurance.currency` and `insurance.value` removed from POST /parcels/tracking, and `status_code`, `status_description` and `sub_status_code` removed from tracking event responses, with no earlier deprecation entry for those fields. The changes are documented on the day, so the deduction is the minimum (https://sendcloud.dev/api/v3/changelog.md)"
        ],
        "verdict": "API v3 has 29 public OpenAPI 3.1 specs, an llms.txt index, a dated changelog and a hosted MCP server with toolset filtering. OAuth has one scope, `api`, so a credential can't be limited to reading. The changelog records response fields removed from tracking events on 25 September 2026 with no earlier deprecation entry.",
        "bestFor": "An agent shipping parcels for a European shop that wants many carriers behind one account, including its own carrier contracts on paid plans.",
        "strengths": [
          "29 public OpenAPI 3.1 specs covering 104 API v3 operations, with an llms.txt index and Markdown copies of every docs page",
          "Hosted MCP server at mcp.sendcloud.com/mcp with 24 toolsets, a `?toolsets=` filter and read-only, idempotent and destructive annotations per the docs",
          "A repeated `external_reference_id` on shipment creation returns the existing shipment with a 409 instead of buying a second label",
          "Free test labels through the `sendcloud:letter` and `sendcloud:letterreturn` shipping options, up to 50 before charges apply",
          "Dated API v3 changelog with 37 entries between 9 July and 5 October 2026"
        ],
        "weaknesses": [
          "One OAuth scope, `api`, and key pairs with full account access. No read-only credential was found in the reviewed documentation",
          "Changelog entries of 21 and 25 September 2026 record removed request and response fields on parcel tracking with no earlier deprecation entry",
          "No Retry-After header or backoff guidance was found for 429 responses",
          "No official SDK was found in the reviewed documentation, and the MCP server isn't in the official MCP registry",
          "No test environment. Labels other than the Unstamped letter options are charged unless the carrier accepts a cancellation"
        ],
        "agentNotes": [
          "Use API v3 at https://panel.sendcloud.sc/api/v3. The v2 create-parcel endpoint is closed to accounts created from April 2026",
          "Test with `shipping_option_code` `sendcloud:letter` (returns use `sendcloud:letterreturn`). Any other label is billed unless cancelled within the carrier's deadline",
          "Set `external_reference_id` on every shipment so a retry returns the existing shipment (409) instead of a second label",
          "Read the `errors` array on synchronous announce responses. A carrier failure can arrive inside a success status",
          "Connect MCP with `?toolsets=shipments,shipping-options,parcel-tracking,returns` to keep the tool list short. Create and cancel tools act on the live account"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 67,
          "payments": 37,
          "reliability": 68,
          "schema": 89,
          "security": 49,
          "transparency": 62
        },
        "provenanceScore": 81
      },
      "connect": {
        "http": "curl -X POST --location \"https://account.sendcloud.com/oauth2/token\" \\\n  --header \"Content-Type: application/x-www-form-urlencoded\" \\\n  -d \"grant_type=client_credentials\u0026scope=api\" \\\n  --basic --user your_sendcloud_public_key:your_sendcloud_private_key",
        "claudeCode": "claude mcp add --transport http sendcloud https://mcp.sendcloud.com/mcp",
        "config": {
          "mcpServers": {
            "sendcloud": {
              "type": "http",
              "url": "https://mcp.sendcloud.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/shipping.rates",
        "tool": "https://letme.dev/sendcloud"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Lite plan",
          "unit": "month",
          "usd": 31.3,
          "note": "€28, 400 labels a month, plus €0.10 a label"
        },
        {
          "item": "Growth plan",
          "unit": "month",
          "usd": 97.24,
          "note": "€87, 1,000 labels a month, plus €0.09 a label"
        },
        {
          "item": "Premium plan",
          "unit": "month",
          "usd": 195.6,
          "note": "€175, 10,000 labels a month, plus €0.08 a label"
        },
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 714.21,
          "note": "€639, 30,000 labels a month, plus €0.07 a label"
        },
        {
          "item": "Label fee on Lite",
          "unit": "tx",
          "usd": 0.11,
          "note": "€0.10 a label on top of carrier postage, €0.25 above the monthly limit"
        }
      ],
      "provenance": {
        "legalEntity": "Sendcloud B.V.",
        "domain": "sendcloud.com",
        "domainRegistered": "2008-07-29",
        "endpointOnVendorDomain": true,
        "terms": "https://www.sendcloud.com/terms-conditions/",
        "privacy": "https://www.sendcloud.com/privacy-policy/",
        "statusPage": "https://status.sendcloud.com",
        "changelog": "https://sendcloud.dev/api/v3/changelog",
        "securityTxt": "none",
        "checked": "2026-10-07",
        "notes": [
          "The terms, last updated 1 September 2026, name Sendcloud B.V., registration 66572959, Stadhuisplein 10, 5611 EM Eindhoven, with Sendcloud GmbH, Ltd., SAS and Srl for Germany and Austria, the UK, France and Italy. Dutch law applies.",
          "The MCP server answers at mcp.sendcloud.com and tokens come from account.sendcloud.com. The REST API answers at panel.sendcloud.sc, a second Sendcloud domain.",
          "www.sendcloud.com/.well-known/security.txt and /security.txt return 404. The bug bounty page sends reports to security@sendcloud.com.",
          "RDAP for sendcloud.com gives a registration date of 2008-07-29.",
          "Unit prices are converted from euros at the ECB reference rate of 1.1177 for 7 October 2026, read through api.frankfurter.dev."
        ],
        "score": 81
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/sendcloud.json",
      "live": {
        "slug": "sendcloud",
        "probe": {
          "target": "https://mcp.sendcloud.com/mcp",
          "method": "get",
          "lastAt": "2026-10-08T17:36:45.156031945Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 74,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 84,
          "p95ms24h": 126,
          "samples24h": 25,
          "samples30d": 25,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 25,
              "ok": 25
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.sendcloud.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T17:25:42.672960135Z"
        },
        "securityTxt": {
          "url": "https://sendcloud.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:40.272539649Z"
        },
        "updatedAt": "2026-10-08T17:36:45.156031945Z"
      }
    },
    "answer": "Sendcloud and Shippo score within a point of each other on agent readiness, 62 (B) and 61.9 (C). Shippo leads on maintenance \u0026 community.",
    "b": {
      "slug": "shippo",
      "name": "Shippo",
      "vendor": "Shippo",
      "vendorUrl": "https://goshippo.com",
      "kind": "http-api",
      "category": "shipping",
      "summary": "Multi-carrier shipping API from Shippo. It quotes rates, buys labels, validates addresses, tracks parcels and creates return labels across the carriers it connects, through a REST API, official SDKs and a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/shippo",
      "markdownUrl": "https://www.anchorterminal.com/tools/shippo.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/shippo.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/shippo.json",
      "repo": "https://github.com/goshippo/ai",
      "license": "Proprietary service under Shippo's terms of use. The SDKs and the goshippo/ai repository (skills and MCP bridge) are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.goshippo.com",
      "packages": [
        {
          "registry": "npm",
          "name": "shippo"
        },
        {
          "registry": "pypi",
          "name": "shippo"
        },
        {
          "registry": "npm",
          "name": "@shippo/shippo-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve API key. A person signs up at apps.goshippo.com/join and creates live (shippo_live_) and test (shippo_test_) keys in the API portal, with no review. Calls send `Authorization: ShippoToken \u003ckey\u003e`. Keys are shown once, can be deleted and replaced, and have no scopes. The hosted MCP server at mcp.shippo.com uses per-user OAuth against the live account, with one scope (\"*\"). OAuth credentials for a platform acting for other Shippo accounts come from the sales team. Client-side apps can use a 12-hour JWT from POST /embedded/authz.",
      "pricing": "freemium",
      "pricingNotes": "API Starter has no monthly fee. The first 30 labels a month are free, then 7 cents a label, on top of postage. Calls not tied to a Shippo label are charged per unit (see the price table). API Premier is custom, with volume discounts, through sales. Test mode is free with a test key, so an agent can start without a contract, and billing details are needed for live labels (https://goshippo.com/pricing/api).",
      "priceSummary": "$0.07 / tx",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI spec or the pricing page (checked 2026-10-07).",
        "endpoints": []
      },
      "toolCount": 4,
      "popularity": {
        "githubStars": 3,
        "npmWeekly": 73114,
        "pypiWeekly": 20036,
        "asOf": "2026-10-07"
      },
      "docsUrl": "https://docs.goshippo.com",
      "llmsTxt": "https://docs.goshippo.com/llms.txt",
      "openapi": "https://docs.goshippo.com/spec/shippoapi/public-api.yaml",
      "registryName": "com.shippo/shippo-mcp",
      "capabilities": [
        "shipping.rates",
        "shipping.labels",
        "shipping.tracking",
        "shipping.address-validation",
        "shipping.returns"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "api-key",
        "oauth",
        "mcp",
        "openapi",
        "llms-txt",
        "python",
        "typescript",
        "java",
        "webhooks",
        "sandbox",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.9,
        "grade": "C",
        "agentReady": false,
        "rank": 317,
        "ranked": true,
        "rankOf": 629,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 77,
          "payments": 40,
          "reliability": 59,
          "schema": 83,
          "security": 52,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-07"
        },
        "negative": 0,
        "verdict": "Per-label and per-call prices are public, test keys are self-serve, and the OpenAPI spec, llms.txt and Markdown docs are open to a fetch. Label purchase has no idempotency key, API keys carry no scopes, and the status page logged carrier-side incidents on most days between July and October 2026.",
        "bestFor": "An agent that quotes and buys parcel labels across USPS, UPS, FedEx and DHL Express for a small or mid-size shipper, with a free test mode and public unit prices.",
        "strengths": [
          "Public prices per unit, 7 cents a label after 30 free a month, 1 cent a rate request and 2 cents a tracking request",
          "Test keys (shippo_test_) create free test labels and mock tracking, with data kept apart from live",
          "OpenAPI 3.1 spec with 71 operations, plus llms.txt and a Markdown copy of each docs page",
          "Hosted MCP server at mcp.shippo.com with four tools, reads and writes split so a client can require approval for writes",
          "Rate limits published per endpoint, with separate live and test figures",
          "SOC 2 Type II and PCI DSS listed on the trust centre, with an annual third-party penetration test"
        ],
        "weaknesses": [
          "No idempotency key on label purchase or other writes. Only the Reporting API accepts one",
          "API keys have no scopes or read-only mode, and the OAuth flow has one scope, \"*\"",
          "The hosted MCP server runs on the live account only, with no test mode",
          "Carrier-side incidents on the status page on most days from July to October 2026, many marked major or critical",
          "Terms of use and privacy notice load only with JavaScript, and no SLA or subprocessor list was found",
          "The Python SDK on PyPI is 3.9.0 from 26 November 2024"
        ],
        "agentNotes": [
          "Build and test with a shippo_test_ key. Test and live object IDs are separate, and the hosted MCP server has no test mode",
          "Send `Authorization: ShippoToken \u003ckey\u003e`, not Bearer, and pin `Shippo-API-Version: 2018-02-08`",
          "Before retrying a failed POST /transactions, list recent transactions. There is no idempotency key, and a second purchase is a second charge",
          "Pass `async: false` on shipments and transactions, or poll the object until its status leaves QUEUED",
          "Set `results` on list calls (under 200). Defaults vary by resource, and list calls are limited to 50 a minute on live keys"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 61.9
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 77,
          "payments": 40,
          "reliability": 59,
          "schema": 83,
          "security": 52,
          "transparency": 38
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "npm install shippo",
        "http": "curl https://api.goshippo.com/shipments/ \\\n  -H \"Authorization: ShippoToken \u003cAPI_TOKEN\u003e\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{...}'",
        "claudeCode": "claude mcp add --transport http shippo https://mcp.shippo.com",
        "config": {
          "mcpServers": {
            "shippo": {
              "url": "https://mcp.shippo.com"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/shipping.rates",
        "tool": "https://letme.dev/shippo"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Label, API Starter, after 30 free a month, plus postage",
          "unit": "tx",
          "usd": 0.07
        },
        {
          "item": "Rate request not tied to a Shippo label",
          "unit": "call",
          "usd": 0.01
        },
        {
          "item": "Tracking request not tied to a Shippo label",
          "unit": "call",
          "usd": 0.02
        },
        {
          "item": "Delivery date estimate",
          "unit": "call",
          "usd": 0.03
        },
        {
          "item": "US address validation",
          "unit": "call",
          "usd": 0.02
        },
        {
          "item": "Non-US address validation",
          "unit": "call",
          "usd": 0.08
        }
      ],
      "provenance": {
        "legalEntity": "Shippo",
        "domain": "goshippo.com",
        "domainRegistered": "2013-09-21",
        "endpointOnVendorDomain": true,
        "terms": "https://privacy.goshippo.com/policies?name=terms-of-use",
        "privacy": "https://privacy.goshippo.com/policies?name=privacy-notice",
        "statusPage": "https://status.goshippo.com",
        "changelog": "https://docs.goshippo.com/api-concepts/api-change-log",
        "securityTxt": "none",
        "checked": "2026-10-07",
        "notes": [
          "The registered legal entity wasn't confirmed. goshippo.com/terms and /privacy redirect to a privacy centre that returns no policy text without JavaScript. The SDK licences name \"Shippo\" as copyright holder.",
          "RDAP for goshippo.com gives a registration date of 2013-09-21.",
          "The API answers at api.goshippo.com and the MCP server at mcp.shippo.com, whose OAuth metadata names https://goshippo.com as the authorisation server.",
          "goshippo.com/.well-known/security.txt and goshippo.com/security both return 404. The trust centre gives security@shippo.com and the AI repository's SECURITY.md gives security@goshippo.com.",
          "The trust centre at trust.goshippo.com lists a SOC 2 Type II report (November 2024 to November 2025), a 2026 bridge letter and a PCI SAQ-A attestation, each on request."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/shippo.json",
      "live": {
        "slug": "shippo",
        "probe": {
          "target": "https://api.goshippo.com",
          "method": "get",
          "lastAt": "2026-10-08T17:36:45.281641673Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 143,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 149,
          "p95ms24h": 392,
          "samples24h": 25,
          "samples30d": 25,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 25,
              "ok": 25
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.goshippo.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T17:25:43.253068618Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "goshippo/ai",
            "version": "v1.5.4",
            "released": "2026-07-23",
            "seenAt": "2026-10-08T16:29:07.821314571Z"
          },
          {
            "registry": "npm",
            "name": "@shippo/shippo-mcp",
            "version": "3.0.4",
            "seenAt": "2026-10-08T16:29:06.611030249Z"
          },
          {
            "registry": "npm",
            "name": "shippo",
            "version": "2.18.0",
            "seenAt": "2026-10-08T16:29:05.577126262Z"
          },
          {
            "registry": "pypi",
            "name": "shippo",
            "version": "3.9.0",
            "released": "2024-11-26",
            "seenAt": "2026-10-08T16:29:06.416959144Z"
          }
        ],
        "githubStars": 3,
        "npmWeekly": 73114,
        "pypiWeekly": 21417,
        "securityTxt": {
          "url": "https://goshippo.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:36.985520401Z"
        },
        "updatedAt": "2026-10-08T17:36:45.281641673Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Sendcloud B.V.",
        "b": "Shippo",
        "name": "Vendor"
      },
      {
        "a": "https://mcp.sendcloud.com/mcp",
        "b": "https://api.goshippo.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "not published",
        "b": "$0.01 per call",
        "name": "Price for shipping rates"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Sendcloud's terms and conditions",
        "b": "Proprietary service under Shippo's terms of use. The SDKs and the goshippo/ai repository (skills and MCP bridge) are MIT",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "4",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "com.shippo/shippo-mcp",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-05",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "3 stars, 73k npm/wk, 20k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Sendcloud and Shippo score within a point of each other on agent readiness, 62 (B) and 61.9 (C). Shippo leads on maintenance \u0026 community.",
        "question": "Which is better for AI agents, Sendcloud or Shippo?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Sendcloud and Shippo need an API key?"
      },
      {
        "answer": "Yes. Sendcloud has a hosted endpoint at https://mcp.sendcloud.com/mcp and Shippo at https://api.goshippo.com.",
        "question": "Can an agent call Sendcloud and Shippo without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 68 against 59",
          "Schema \u0026 documentation, 89 against 83",
          "Agent ergonomics, 71 against 64",
          "Transparency \u0026 trust, 72 against 61"
        ],
        "also": null,
        "goodFor": "An agent shipping parcels for a European shop that wants many carriers behind one account, including its own carrier contracts on paid plans.",
        "slug": "sendcloud",
        "watchFor": "One OAuth scope, `api`, and key pairs with full account access. No read-only credential was found in the reviewed documentation"
      },
      {
        "aheadOn": [
          "Maintenance \u0026 community, 77 against 67"
        ],
        "also": [
          "No incidents deducted, where Sendcloud loses 3 points for them"
        ],
        "goodFor": "An agent that quotes and buys parcel labels across USPS, UPS, FedEx and DHL Express for a small or mid-size shipper, with a free test mode and public unit prices.",
        "slug": "shippo",
        "watchFor": "No idempotency key on label purchase or other writes. Only the Reporting API accepts one"
      }
    ],
    "job": {
      "capability": "shipping.rates",
      "name": "Shipping rates"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/easypost-vs-sendcloud.json",
        "title": "EasyPost vs Sendcloud",
        "url": "https://www.anchorterminal.com/compare/easypost-vs-sendcloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/easypost-vs-shippo.json",
        "title": "EasyPost vs Shippo",
        "url": "https://www.anchorterminal.com/compare/easypost-vs-shippo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/easyship-vs-sendcloud.json",
        "title": "Easyship vs Sendcloud",
        "url": "https://www.anchorterminal.com/compare/easyship-vs-sendcloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/easyship-vs-shippo.json",
        "title": "Easyship vs Shippo",
        "url": "https://www.anchorterminal.com/compare/easyship-vs-shippo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendcloud-vs-shipstation.json",
        "title": "Sendcloud vs ShipStation API",
        "url": "https://www.anchorterminal.com/compare/sendcloud-vs-shipstation"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shippo-vs-shipstation.json",
        "title": "Shippo vs ShipStation API",
        "url": "https://www.anchorterminal.com/compare/shippo-vs-shipstation"
      }
    ],
    "scores": [
      {
        "by": 9,
        "edge": "sendcloud",
        "key": "reliability",
        "name": "Reliability",
        "sendcloud": 68,
        "shippo": 59,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 6,
        "edge": "sendcloud",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "sendcloud": 89,
        "shippo": 83,
        "weight": 13
      },
      {
        "by": 7,
        "edge": "sendcloud",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "sendcloud": 71,
        "shippo": 64,
        "weight": 13
      },
      {
        "by": 3,
        "edge": "shippo",
        "key": "security",
        "name": "Security \u0026 auth",
        "sendcloud": 49,
        "shippo": 52,
        "weight": 14
      },
      {
        "by": 3,
        "edge": "shippo",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "sendcloud": 37,
        "shippo": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "edge": "shippo",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "sendcloud": 67,
        "shippo": 77,
        "weight": 7
      },
      {
        "by": 11,
        "edge": "sendcloud",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "sendcloud": 72,
        "shippo": 61,
        "weight": 7
      }
    ],
    "summary": "Sendcloud and Shippo score within a point of each other on agent readiness, 62 (B) and 61.9 (C). Shippo leads on maintenance \u0026 community. Both do shipping rates.",
    "verdicts": {
      "sendcloud": "API v3 has 29 public OpenAPI 3.1 specs, an llms.txt index, a dated changelog and a hosted MCP server with toolset filtering. OAuth has one scope, `api`, so a credential can't be limited to reading. The changelog records response fields removed from tracking events on 25 September 2026 with no earlier deprecation entry.",
      "shippo": "Per-label and per-call prices are public, test keys are self-serve, and the OpenAPI spec, llms.txt and Markdown docs are open to a fetch. Label purchase has no idempotency key, API keys carry no scopes, and the status page logged carrier-side incidents on most days between July and October 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/sendcloud-vs-shippo",
    "json": "https://www.anchorterminal.com/compare/sendcloud-vs-shippo.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/sendcloud-vs-shippo.md",
    "slim": "https://www.anchorterminal.com/compare/sendcloud-vs-shippo.min.md"
  },
  "markdown": "Sendcloud and Shippo score within a point of each other on agent readiness, 62 (B) and 61.9 (C). Shippo leads on maintenance \u0026 community. Both do shipping rates.\n\n- Sendcloud: grade B, 62/100, rank #314 of 629. Markdown https://www.anchorterminal.com/tools/sendcloud.md · JSON https://www.anchorterminal.com/api/v1/tools/sendcloud.json\n- Shippo: grade C, 61.9/100, rank #317 of 629. Markdown https://www.anchorterminal.com/tools/shippo.md · JSON https://www.anchorterminal.com/api/v1/tools/shippo.json\n\n## Which one, for what\n\n### Sendcloud (B)\n\nGood for: An agent shipping parcels for a European shop that wants many carriers behind one account, including its own carrier contracts on paid plans.\n\nAhead on:\n- Reliability, 68 against 59\n- Schema \u0026 documentation, 89 against 83\n- Agent ergonomics, 71 against 64\n- Transparency \u0026 trust, 72 against 61\n\nWatch for: One OAuth scope, `api`, and key pairs with full account access. No read-only credential was found in the reviewed documentation\n\n### Shippo (C)\n\nGood for: An agent that quotes and buys parcel labels across USPS, UPS, FedEx and DHL Express for a small or mid-size shipper, with a free test mode and public unit prices.\n\nAhead on:\n- Maintenance \u0026 community, 77 against 67\n\nAlso in its favour:\n- No incidents deducted, where Sendcloud loses 3 points for them\n\nWatch for: No idempotency key on label purchase or other writes. Only the Reporting API accepts one\n\n\n## Score by category\n\n| Category | Weight | Sendcloud | Shippo | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 68 | 59 | Sendcloud +9 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 83 | Sendcloud +6 |\n| Agent ergonomics | 13% (16.2 this run) | 71 | 64 | Sendcloud +7 |\n| Security \u0026 auth | 14% (17.5 this run) | 49 | 52 | Shippo +3 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 37 | 40 | Shippo +3 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 67 | 77 | Shippo +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 61 | Sendcloud +11 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **62 · B** | **61.9 · C** | |\n\n## Facts side by side\n\n| Fact | Sendcloud | Shippo |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Sendcloud B.V. | Shippo |\n| Hosted endpoint | `https://mcp.sendcloud.com/mcp` | `https://api.goshippo.com` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| Price for shipping rates | not published | $0.01 per call |\n| x402 | no | no |\n| Licence | Proprietary service under Sendcloud's terms and conditions | Proprietary service under Shippo's terms of use. The SDKs and the goshippo/ai repository (skills and MCP bridge) are MIT |\n| Tools exposed | none | 4 |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | `com.shippo/shippo-mcp` |\n| Last release | 2026-10-05 | 2026-10-01 |\n| Terms last updated | no date given | couldn't be read |\n| Privacy policy last updated | no date given | couldn't be read |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | yes | couldn't be read |\n| Terms restrict benchmarking | yes | couldn't be read |\n| Terms or service can change without notice | yes | couldn't be read |\n| Arbitration or class-action waiver | not found in the text | couldn't be read |\n| Popularity | none | 3 stars, 73k npm/wk, 20k PyPI/wk |\n\n## Verdicts\n\n**Sendcloud.** API v3 has 29 public OpenAPI 3.1 specs, an llms.txt index, a dated changelog and a hosted MCP server with toolset filtering. OAuth has one scope, `api`, so a credential can't be limited to reading. The changelog records response fields removed from tracking events on 25 September 2026 with no earlier deprecation entry.\n\n**Shippo.** Per-label and per-call prices are public, test keys are self-serve, and the OpenAPI spec, llms.txt and Markdown docs are open to a fetch. Label purchase has no idempotency key, API keys carry no scopes, and the status page logged carrier-side incidents on most days between July and October 2026.\n\n## Before you call either\n\n### Sendcloud\n\n1. Use API v3 at https://panel.sendcloud.sc/api/v3. The v2 create-parcel endpoint is closed to accounts created from April 2026\n2. Test with `shipping_option_code` `sendcloud:letter` (returns use `sendcloud:letterreturn`). Any other label is billed unless cancelled within the carrier's deadline\n3. Set `external_reference_id` on every shipment so a retry returns the existing shipment (409) instead of a second label\n4. Read the `errors` array on synchronous announce responses. A carrier failure can arrive inside a success status\n5. Connect MCP with `?toolsets=shipments,shipping-options,parcel-tracking,returns` to keep the tool list short. Create and cancel tools act on the live account\n\n### Shippo\n\n1. Build and test with a shippo_test_ key. Test and live object IDs are separate, and the hosted MCP server has no test mode\n2. Send `Authorization: ShippoToken \u003ckey\u003e`, not Bearer, and pin `Shippo-API-Version: 2018-02-08`\n3. Before retrying a failed POST /transactions, list recent transactions. There is no idempotency key, and a second purchase is a second charge\n4. Pass `async: false` on shipments and transactions, or poll the object until its status leaves QUEUED\n5. Set `results` on list calls (under 200). Defaults vary by resource, and list calls are limited to 50 a minute on live keys\n\n## Questions\n\n### Which is better for AI agents, Sendcloud or Shippo?\n\nSendcloud and Shippo score within a point of each other on agent readiness, 62 (B) and 61.9 (C). Shippo leads on maintenance \u0026 community.\n\n### Do Sendcloud and Shippo need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Sendcloud and Shippo without installing anything?\n\nYes. Sendcloud has a hosted endpoint at https://mcp.sendcloud.com/mcp and Shippo at https://api.goshippo.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/sendcloud-vs-shippo.json, and with the fewest tokens: https://www.anchorterminal.com/compare/sendcloud-vs-shippo.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"sendcloud\", \"b\": \"shippo\"}`. From a terminal: `anchor compare sendcloud shippo`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/sendcloud.json and https://www.anchorterminal.com/api/v1/tools/shippo.json\n\n## Other comparisons with Sendcloud or Shippo\n\n- [EasyPost vs Sendcloud](https://www.anchorterminal.com/compare/easypost-vs-sendcloud.md)\n- [EasyPost vs Shippo](https://www.anchorterminal.com/compare/easypost-vs-shippo.md)\n- [Easyship vs Sendcloud](https://www.anchorterminal.com/compare/easyship-vs-sendcloud.md)\n- [Easyship vs Shippo](https://www.anchorterminal.com/compare/easyship-vs-shippo.md)\n- [Sendcloud vs ShipStation API](https://www.anchorterminal.com/compare/sendcloud-vs-shipstation.md)\n- [Shippo vs ShipStation API](https://www.anchorterminal.com/compare/shippo-vs-shipstation.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "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": "Sendcloud vs Shippo",
        "url": ""
      }
    ],
    "description": "Sendcloud and Shippo score within a point of each other on agent readiness, 62 (B) and 61.9 (C). Shippo leads on maintenance \u0026 community. Both do shipping rates. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Sendcloud B 62",
      "Shippo C 61.9",
      "scores"
    ],
    "h1": "Sendcloud vs Shippo",
    "image": "https://www.anchorterminal.com/assets/og/compare-sendcloud-vs-shippo.png",
    "path": "/compare/sendcloud-vs-shippo",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Sendcloud vs Shippo for AI agents, B 62 vs C 61.9 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/sendcloud-vs-shippo"
  },
  "tokens": {
    "markdown": 1950,
    "slim": 730
  },
  "version": 1
}
