{
  "data": {
    "a": {
      "slug": "atoship",
      "name": "atoship",
      "vendor": "atoship LLC",
      "vendorUrl": "https://atoship.com",
      "kind": "http-api",
      "category": "shipping",
      "summary": "atoship is US shipping software for e-commerce sellers that sells discounted USPS, UPS, FedEx and DHL labels with no subscription. Agents use its REST API v1 or an MCP server, hosted with OAuth or local through npx.",
      "url": "https://www.anchorterminal.com/tools/atoship",
      "markdownUrl": "https://www.anchorterminal.com/tools/atoship.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/atoship.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/atoship.json",
      "dns": "atoship.grade.anchorterminal.com",
      "transports": [
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://atoship.com/api/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@atoship/mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "REST and the local MCP server take API keys from the dashboard, `ak_live_` for production and `ak_test_` for sandbox, sent as Bearer tokens; the docs advise separate keys with limited scopes and periodic rotation. The hosted MCP server uses OAuth with PKCE (S256) and dynamic registration or a published public client ID, and its approval screen lists what the assistant may do, including buying and voiding labels.",
      "pricing": "usage",
      "pricingNotes": "No subscription or seat fee. Wallet-funded labels cost the discounted carrier rate shown live when quoting. Metered fees are $0.08 a label on your own carrier account, $0.03 a number for tracking labels bought elsewhere and $0.03 a call for the standalone Address Verification API. Sign-up is free with no card, and test keys create no real labels.",
      "priceSummary": "$0.08 / tx",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the MCP docs, API docs, llms.txt or pricing page (checked 2026-11-06). Labels are paid from a prefunded wallet.",
        "endpoints": []
      },
      "toolCount": 12,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://atoship.com/docs/mcp",
      "llmsTxt": "https://atoship.com/llms.txt",
      "capabilities": [
        "shipping.rates",
        "shipping.labels",
        "shipping.tracking",
        "shipping.address-validation",
        "shipping.returns"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "remote-mcp",
        "oauth",
        "llms-txt",
        "usage",
        "prepaid",
        "no-card",
        "sandbox",
        "webhooks",
        "postman"
      ],
      "lastRelease": "2026-02-18",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 43,
        "grade": "E",
        "agentReady": false,
        "rank": 1247,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 53,
          "maintenance": 10,
          "payments": 40,
          "reliability": 30,
          "schema": 55,
          "security": 55,
          "transparency": 45
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "atoship gives agents twelve MCP tools and a REST API for US labels with published per-unit fees, free sign-up, test keys and a wallet the agent cannot overspend. No status page, rate-limit figures, OpenAPI spec or changelog was found, and the npm MCP package has not changed since February 2026.",
        "bestFor": "US sellers who want cheap USPS, UPS and FedEx labels bought by an agent from a capped wallet.",
        "strengths": [
          "Free account with no card, and `ak_test_` keys that create no real labels",
          "Per-unit fees published: $0.08 a label on your own carrier account, $0.03 a tracking number or address check",
          "Hosted MCP server with OAuth and PKCE, whose consent screen names label buying and voiding",
          "An agent can spend only what is already in the wallet",
          "Errors carry machine-readable codes and a `retryAfter` on 429"
        ],
        "weaknesses": [
          "No status page; status.atoship.com serves the home page",
          "Rate limits are not given in numbers, and no OpenAPI spec was found",
          "No changelog, and @atoship/mcp was last published on 18 February 2026",
          "Most listed SDKs are not published; only Go installs",
          "No security certification, subprocessor list or retention periods found"
        ],
        "agentNotes": [
          "Use an `ak_test_` key until the user confirms live labels; test mode creates no real labels",
          "Ask the user before `purchase_label`, since it spends the wallet balance",
          "Call `void_label` promptly for a mistaken label, and check the carrier's refund rules",
          "Branch on `error.code`, and on 429 wait `error.retryAfter` seconds",
          "Validate the address with `validate_address` before buying; the standalone endpoint costs $0.03 a call"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 43
          }
        ],
        "editorialScores": {
          "ergonomics": 53,
          "maintenance": 10,
          "payments": 40,
          "reliability": 30,
          "schema": 55,
          "security": 55,
          "transparency": 25
        },
        "provenanceScore": 65,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npx -y @atoship/mcp",
        "claudeCode": "claude mcp add --transport http atoship https://atoship.com/api/mcp",
        "config": {
          "mcpServers": {
            "atoship": {
              "url": "https://atoship.com/api/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/shipping.rates",
        "tool": "https://letme.dev/atoship"
      },
      "area": "business",
      "unitPrices": [
        {
          "item": "Label on your own carrier account",
          "unit": "tx",
          "usd": 0.08,
          "note": "Per label; the carrier bills postage"
        },
        {
          "item": "External tracking number",
          "unit": "tx",
          "usd": 0.03,
          "note": "Only for labels bought elsewhere"
        },
        {
          "item": "Address Verification API call",
          "unit": "call",
          "usd": 0.03,
          "note": "Standalone endpoint only; checks inside rate quotes are free"
        }
      ],
      "provenance": {
        "legalEntity": "atoship LLC",
        "domain": "atoship.com",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://atoship.com/terms",
        "privacy": "https://atoship.com/privacy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "atoship.com/robots.txt disallows /api/, /dashboard/, /admin/, /_next/ and /static/ for all agents, so the MCP and REST endpoints under /api/ were not requested.",
          "Terms last updated 20 August 2026 and privacy policy 7 May 2026. The terms forbid decompiling or reverse engineering the platform; no clause on reading public pages was found.",
          "security.txt names security@atoship.com, points its policy to the terms and expires 31 December 2027.",
          "status.atoship.com answers with the marketing home page and /docs/status rendered no status content, so no status page is recorded."
        ],
        "score": 65
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/atoship.json",
      "live": {
        "slug": "atoship",
        "probe": {
          "target": "https://atoship.com/api/mcp",
          "method": "get",
          "lastAt": "2026-11-07T18:20:11.359764372Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 404,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 366,
          "p95ms24h": 457,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@atoship/mcp",
            "version": "1.0.2",
            "seenAt": "2026-11-06T23:07:48.297476849Z"
          }
        ],
        "npmWeekly": 6,
        "securityTxt": {
          "url": "https://atoship.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-12-31T23:59:59.000Z",
          "checkedAt": "2026-11-07T16:01:05.350843408Z"
        },
        "llmsTxt": {
          "url": "https://atoship.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:31:37.315201154Z"
        },
        "pages": [
          {
            "url": "https://atoship.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T13:59:42.701099832Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a06a9e463f87"
          },
          {
            "url": "https://atoship.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T13:59:44.734681167Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "b9b07e284da6"
          }
        ],
        "mcpTools": {
          "url": "https://atoship.com/api/mcp",
          "checkedAt": "2026-11-07T01:42:32.687477466Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:42:32.687477466Z"
        },
        "updatedAt": "2026-11-07T18:20:11.359764372Z"
      }
    },
    "answer": "ShipBob scores 61.3 (C) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on payments \u0026 pricing.",
    "b": {
      "slug": "shipbob",
      "name": "ShipBob",
      "vendor": "ShipBob, Inc.",
      "vendorUrl": "https://www.shipbob.com",
      "kind": "http-api",
      "category": "shipping",
      "summary": "Outsourced fulfilment service from ShipBob, Inc. of Chicago. Merchants send orders, products, inbound stock and returns to its warehouse network through a REST API with date-based versions, a hosted MCP server and webhooks, with a separate sandbox.",
      "url": "https://www.anchorterminal.com/tools/shipbob",
      "markdownUrl": "https://www.anchorterminal.com/tools/shipbob.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/shipbob.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/shipbob.json",
      "dns": "shipbob.grade.anchorterminal.com",
      "repo": "https://github.com/ShipBob/mcp-ai-tutorials",
      "license": "Proprietary service under ShipBob's Terms of Service. The MCP tutorials repository on GitHub has no licence file",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.shipbob.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Self-serve, with no review. A person signs up in a browser and creates a Personal Access Token in the dashboard under Integrations, API Tokens, sent as `Authorization: Bearer \u003ctoken\u003e`. These tokens have every scope, don't expire, act as the account's root user and can be revoked. Multi-user apps use the OAuth 2.0 authorisation code grant with PKCE at auth.shipbob.com, with read and write scopes per domain, one-hour access tokens and 30-day refresh tokens. The hosted MCP server uses OAuth with dynamic client registration, or a token as Bearer. Writes need a `shipbob_channel_id` header. Logistics API credentials come from a ShipBob representative.",
      "pricing": "paid",
      "pricingNotes": "Quote only. The pricing page names the fee types (implementation, receiving, storage, and pick, pack and ship) with no figures and a form for a quote. The developer docs say an account is free until physical inventory arrives and that the sandbox is free, so an agent can build and test without a contract. The API and MCP server carry no separate charge (https://www.shipbob.com/pricing/, https://developer.shipbob.com/introduction).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 89,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developer.shipbob.com",
      "llmsTxt": "https://developer.shipbob.com/llms.txt",
      "openapi": "https://marketplaceapi.shipbob.com/docs/2026-07.json",
      "capabilities": [
        "shipping.rates",
        "shipping.tracking",
        "shipping.returns",
        "shipping.labels"
      ],
      "tags": [
        "hosted",
        "paid",
        "sales-led",
        "api-key",
        "oauth",
        "mcp",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-07-31",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.3,
        "grade": "C",
        "agentReady": false,
        "rank": 617,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 4,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 56,
          "maintenance": 51,
          "payments": 20,
          "reliability": 75,
          "schema": 85,
          "security": 55,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "OAuth with PKCE and read and write scopes per domain, a free sandbox, a public OpenAPI spec per version and a 24-month support window for each API version are documented. Fulfilment prices are by quote only, the status page has no API component, no official SDK was found, and Personal Access Tokens never expire and carry full account access.",
        "bestFor": "An agent working for a merchant that already stores stock with ShipBob, to create and track orders, check inventory, book inbound stock and handle returns.",
        "strengths": [
          "OAuth 2.0 with PKCE, separate read and write scopes for nine domains, one-hour access tokens and 30-day refresh tokens",
          "Free sandbox at `sandbox-api.shipbob.com` with its own accounts, a test card number and a simulation terminal for shipments, receiving and stock changes",
          "OpenAPI 3.0 spec for each API version with 89 operations and 504 examples in 2026-07, plus llms.txt and a Markdown copy of each docs page",
          "A new API version each January and July, each supported for 24 months, with an upgrade guide per step",
          "Hosted MCP server with 89 tools, OAuth with dynamic client registration, and writes limited to the channel created at consent",
          "Rate limit of 150 requests a minute published, with `x-retry-after` and `x-remaining-calls` response headers"
        ],
        "weaknesses": [
          "No public price. Receiving, storage and pick, pack and ship fees come only in a quote from sales",
          "The status page lists the merchant dashboard and two warehouse systems, with no component for the API and no incident posted",
          "Personal Access Tokens don't expire and carry every scope, with no read-only option",
          "No official SDK was found, and the MCP server is not in the official MCP registry",
          "No idempotency key or safe-retry guidance. A retried create is caught only by the unique `reference_id`, which returns 422",
          "No security.txt, disclosure policy or bug bounty was found, and no API uptime SLA is published"
        ],
        "agentNotes": [
          "Call `GET /2026-07/channel` first and send the ID of the channel with `_write` scopes in the `shipbob_channel_id` header on every write",
          "Build against `https://sandbox-api.shipbob.com` with a sandbox account. Sandbox and production accounts, tokens and data are separate",
          "Set a stable `reference_id` on each order, product and return. A duplicate returns 422, which is the only guard against a double create",
          "Stay under 150 requests a minute per user and application, and wait the seconds given in `x-retry-after` after a 429",
          "Over MCP, writes work only on records in the channel created at consent. A 403 or 404 on a cancel usually means the record belongs to another channel"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 61.3
          }
        ],
        "editorialScores": {
          "ergonomics": 56,
          "maintenance": 51,
          "payments": 20,
          "reliability": 75,
          "schema": 85,
          "security": 55,
          "transparency": 69
        },
        "provenanceScore": 87,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "lastMoved": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -X GET \"https://api.shipbob.com/2026-07/channel\" \\\n  -H \"Authorization: Bearer YOUR_API_TOKEN\"",
        "claudeCode": "claude mcp add --transport http shipbob-mcp --scope user https://api.shipbob.com/developer-api/mcp",
        "config": {
          "mcpServers": {
            "shipbob": {
              "url": "https://api.shipbob.com/developer-api/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/shipping.rates",
        "tool": "https://letme.dev/shipbob"
      },
      "area": "business",
      "provenance": {
        "legalEntity": "ShipBob, Inc.",
        "domain": "shipbob.com",
        "domainRegistered": "2014-03-12",
        "endpointOnVendorDomain": true,
        "terms": "https://www.shipbob.com/terms-of-service/",
        "privacy": "https://www.shipbob.com/privacy-policy/",
        "statusPage": "https://status.shipbob.com",
        "changelog": "https://developer.shipbob.com/release-notes",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Terms of Service (updated 22 May 2026) define ShipBob as ShipBob, Inc. and its affiliates, give 120 N Racine Ave, Suite 100, Chicago, IL 60607, and are governed by Illinois law. They are the agreement for the fulfilment service and its platform, and no separate API terms were found.",
          "The privacy policy (last updated 29 March 2024) names ShipBob, Inc. and says it doesn't apply where commercial contracts govern the processing. Merchant data is covered by the DPA dated April 2026, which the terms incorporate.",
          "The API answers at api.shipbob.com and sandbox-api.shipbob.com, OAuth at auth.shipbob.com, and the MCP server at api.shipbob.com/developer-api/mcp. Sandbox accounts are created at webstage.shipbob.dev.",
          "security.txt returns 404 on www.shipbob.com, developer.shipbob.com and api.shipbob.com. No disclosure address was found on the trust page.",
          "RDAP for shipbob.com gives a registration date of 2014-03-12.",
          "The status page has components for the merchant dashboard and two warehouse systems, and none for the API."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/shipbob.json",
      "live": {
        "slug": "shipbob",
        "probe": {
          "target": "https://api.shipbob.com",
          "method": "get",
          "lastAt": "2026-11-07T18:20:54.052386725Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 195,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 138,
          "p95ms24h": 376,
          "samples24h": 239,
          "samples30d": 7420,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 50,
              "ok": 50
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.shipbob.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:22:00.694046017Z"
        },
        "githubStars": 0,
        "securityTxt": {
          "url": "https://shipbob.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:03.634603989Z"
        },
        "llmsTxt": {
          "url": "https://developer.shipbob.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:54.836248886Z"
        },
        "domain": {
          "domain": "shipbob.com",
          "registered": "2014-03-12",
          "source": "https://rdap.verisign.com/com/v1/domain/shipbob.com",
          "checkedAt": "2026-11-01T14:07:11.020954507Z"
        },
        "pages": [
          {
            "url": "https://developer.shipbob.com/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:03:20.321025117Z",
            "changedAt": "2026-10-28T04:12:28.999036119Z",
            "fingerprint": "fe27b7a5ba42"
          },
          {
            "url": "https://developer.shipbob.com/versioning",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:03:25.009619902Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "0a62faa3af43"
          },
          {
            "url": "https://www.shipbob.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:34:25.328859424Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "d7940a8e08df"
          },
          {
            "url": "https://www.shipbob.com/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:34:28.022019103Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a96e9e7bdfbc"
          },
          {
            "url": "https://www.shipbob.com/terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:34:30.086005043Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "32cbec402cde"
          }
        ],
        "mcpTools": {
          "url": "https://api.shipbob.com/developer-api/mcp",
          "checkedAt": "2026-11-07T01:47:54.344365744Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:47:54.344365744Z"
        },
        "github": {
          "repo": "shipbob/mcp-ai-tutorials",
          "checkedAt": "2026-11-02T09:25:09.983450346Z",
          "stars": 0,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-08-20T17:41:50Z",
          "openIssues": 0,
          "openPRs": 0,
          "issuesOpened90d": 0,
          "issuesClosed90d": 0,
          "prsMerged90d": 0
        },
        "updatedAt": "2026-11-07T18:22:00.694046017Z"
      }
    },
    "edges": [
      {
        "by": 45,
        "category": "reliability",
        "leads": "shipbob",
        "name": "Reliability",
        "reasons": {
          "a": "Graded as a hosted service on the MCP server at atoship.com/api/mcp and REST API v1. status.atoship.com serves the marketing home page and the docs' API Status page rendered no status content, so no status page is counted (0). No readable incident history (5). 429 and a `RATE_LIMIT_EXCEEDED` code are documented, without numbers (5 of 15). A 429 carries `error.retryAfter` and Retry-After; no idempotency key for label purchases was found (10 of 15). No SLA (0). Not labelled beta (10). 0 + 5 + 5 + 10 + 0 + 10 = 30.",
          "b": "Read with the hosted lines and scored on the REST API at api.shipbob.com. Statuspage at status.shipbob.com with three components and 90-day uptime bars (20). history.atom, read on 3 November, holds only two scheduled maintenance notices (1 September 2025, and 18 October 2026 from 03:00 to 04:00 CDT on the dashboard and both warehouse systems, posted on 8 October) and no incident. The page says it reports major outages of the website or dashboard, has no API component and has never posted an incident, which this run scores 20 (20). 150 requests a minute, sliding window, per user and application (15). A 429 carries `x-retry-after` and the errors page recommends exponential backoff. A duplicate `reference_id` returns 422, but the docs give no idempotency key and don't say a retried write is safe, so this is backoff guidance alone (10 of 15, was 12). The terms publish fulfilment turnaround SLAs with 14 exclusions. No uptime SLA for the API was found (0). The dated API versions are generally available (10). 20 + 20 + 15 + 10 + 0 + 10 = 75."
        },
        "scores": {
          "a": 30,
          "b": 75
        }
      },
      {
        "by": 41,
        "category": "maintenance",
        "leads": "shipbob",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "No changelog or release notes found. The newest dated release is @atoship/mcp 1.0.2 on 18 February 2026, more than 180 days ago (0). No dated releases in the 90 days from 8 August (0). Support by email, with no public tracker; the repository named on npm is not public (5 of 15). The MCP package is official, and only the Go SDK of eight listed is installable (5 of 15). No public CI (0). 0 + 0 + 5 + 5 + 0 = 10.",
          "b": "The MCP tools page was updated on 27 October 2026 (its own `dateModified`, 'Last updated'), and now lists 89 tools across eleven domains where the 8 October check found 73, a dated change to the MCP server inside 30 days. The newest API release is 2026-07 on 31 July 2026, 95 days before the check (30 of 30, was 20). The release notes have no entry after July 2026, and July's PKCE entry has no day. Inside the 90 days from 5 August there are the MCP tools update and four tutorials repository commits from 17 to 20 August, so half for this line, as on 8 October (10 of 20). Closed service with dated release notes and a support address that promises a first reply within one business day (9 of 15). The MCP server isn't in the official registry (no result for shipbob on 3 November), and no official SDK was found (0 of 15). OpenAPI specs are kept for each version. Nothing else to judge package health on (2 of 10). 30 + 10 + 9 + 0 + 2 = 51."
        },
        "scores": {
          "a": 10,
          "b": 51
        }
      },
      {
        "by": 33,
        "category": "transparency",
        "leads": "shipbob",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service under terms naming atoship LLC of California (15 of 30). The privacy policy (7 May 2026) keeps data as long as necessary with no periods and names no processors (10 of 30). No deprecation policy or dated notices found (0). No subprocessor list or data locations found (0). 15 + 10 + 0 + 0 = 25.",
          "b": "Closed service. The Terms of Service, updated 22 May 2026, name ShipBob, Inc. and Illinois law. The tutorials repository has no licence file (15 of 30). A privacy policy dated 29 March 2024, which says it doesn't apply where a commercial contract governs, and a DPA dated April 2026 under which ShipBob deletes or returns personal data at the end of the service if the merchant asks. No retention period is stated in days, and the terms grant ShipBob a perpetual right to use merchant content for product improvement (17 of 30). A written version policy with 24 months of support for each version, end dates in a table, and the phased shutdown of 1.0 published with dates (20 of 20). A public list of about 30 subprocessors with purpose and location, all in the United States, with no date on the page (17 of 20)."
        },
        "scores": {
          "a": 45,
          "b": 78
        }
      },
      {
        "by": 30,
        "category": "schema",
        "leads": "shipbob",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "No OpenAPI found (/openapi.json is 404); a Postman collection v2.1 of 15 endpoints is the only machine-readable contract, and the hosted MCP tools' schemas were not read because /api/ is disallowed (15 of 25). llms.txt (10). The MCP page gives each tool a one-line description and an example prompt (8 of 20). Input typing could not be checked beyond the docs' object pages (5 of 15). The errors page documents status codes, `error.code` values and `retryAfter`, with examples (12 of 15). v1 API, no changelog found (5 of 15). 15 + 10 + 8 + 5 + 12 + 5 = 55.",
          "b": "OpenAPI 3.0 spec for each version at marketplaceapi.shipbob.com, 89 operations in 2026-07. The `openapi.json` link in the docs index returns an HTML page, not the spec (25). llms.txt per version and a Markdown copy of each page (10). 88 of 89 operations have a description, and some say when to use them, such as the inventory level call for current stock questions. Few say when not to (14 of 20). All 199 parameters have a schema, with 46 enums and required fields marked. Sort order and shipping method are free strings, and many filters are comma-separated lists (10 of 15). 504 examples. 401 and 403 are documented on 64 operations, 400 on 58 and 422 on 18, 429 on none, and error bodies differ by domain, with RFC 7807 problem details in some and an `errors` array in others (11 of 15). Date-based versions, an upgrade guide per version and dated release notes (15)."
        },
        "scores": {
          "a": 55,
          "b": 85
        }
      },
      {
        "by": 20,
        "category": "payments",
        "leads": "atoship",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). Per-unit fees are published without a login ($0.08 a BYOCA label, $0.03 a tracking number or address check), and wallet postage is priced live in a public calculator (20). Free account with no card, and test keys (20). A person signs up in a browser and funds the wallet (0). 0 + 20 + 20 + 0 = 40.",
          "b": "No x402, MPP or L402 (0). The pricing page lists the fee types (implementation, receiving, storage, pick, pack and ship) with no figures and a quote form (0). An account is free until physical inventory arrives, per the developer docs, and the sandbox is free and takes a test card number. We didn't open an account to confirm (20). A person signs up in a browser and creates the token or approves OAuth. Dynamic client registration on the MCP server still ends in a browser sign-in (0)."
        },
        "scores": {
          "a": 40,
          "b": 20
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "atoship LLC",
        "b": "ShipBob, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://atoship.com/api/mcp",
        "b": "https://api.shipbob.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary service under ShipBob's Terms of Service. The MCP tutorials repository on GitHub has no licence file",
        "name": "Licence"
      },
      {
        "a": "12",
        "b": "89",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-02-18",
        "b": "2026-07-31",
        "name": "Last release"
      },
      {
        "a": "2026-08-20",
        "b": "2026-05-22",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-07",
        "b": "2024-03-29",
        "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": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "3.3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "ShipBob scores 61.3 (C) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, atoship or ShipBob?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do atoship and ShipBob need an API key?"
      },
      {
        "answer": "Yes. atoship has a hosted endpoint at https://atoship.com/api/mcp and ShipBob at https://api.shipbob.com.",
        "question": "Can an agent call atoship and ShipBob without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Payments \u0026 pricing, 40 against 20"
        ],
        "also": [
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "US sellers who want cheap USPS, UPS and FedEx labels bought by an agent from a capped wallet.",
        "slug": "atoship",
        "watchFor": "No status page; status.atoship.com serves the home page"
      },
      {
        "aheadOn": [
          "Reliability, 75 against 30",
          "Schema \u0026 documentation, 85 against 55",
          "Maintenance \u0026 community, 51 against 10",
          "Transparency \u0026 trust, 78 against 45"
        ],
        "also": null,
        "goodFor": "An agent working for a merchant that already stores stock with ShipBob, to create and track orders, check inventory, book inbound stock and handle returns.",
        "slug": "shipbob",
        "watchFor": "No public price. Receiving, storage and pick, pack and ship fees come only in a quote from sales"
      }
    ],
    "history": {
      "atoship": null,
      "shipbob": [
        {
          "causes": [
            "product",
            "correction"
          ],
          "date": "2026-11-03",
          "delta": 0.4,
          "from": 60.9,
          "fromGrade": "C",
          "to": 61.3,
          "toGrade": "C"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 60.8,
          "fromGrade": "C",
          "to": 60.9,
          "toGrade": "C"
        }
      ]
    },
    "job": {
      "capability": "shipping.rates",
      "name": "Shipping rates"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-easypost.json",
        "title": "atoship vs EasyPost",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-easypost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-easyship.json",
        "title": "atoship vs Easyship",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-easyship"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-envia.json",
        "title": "atoship vs Envia",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-envia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-karrio.json",
        "title": "atoship vs Karrio",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-karrio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-sendcloud.json",
        "title": "atoship vs Sendcloud",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-sendcloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-shippo.json",
        "title": "atoship vs Shippo",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-shippo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-shippypro.json",
        "title": "atoship vs ShippyPro",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-shippypro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-shipstation.json",
        "title": "atoship vs ShipStation API",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-shipstation"
      },
      {
        "json": "https://www.anchorterminal.com/compare/easypost-vs-shipbob.json",
        "title": "EasyPost vs ShipBob",
        "url": "https://www.anchorterminal.com/compare/easypost-vs-shipbob"
      },
      {
        "json": "https://www.anchorterminal.com/compare/easyship-vs-shipbob.json",
        "title": "Easyship vs ShipBob",
        "url": "https://www.anchorterminal.com/compare/easyship-vs-shipbob"
      },
      {
        "json": "https://www.anchorterminal.com/compare/envia-vs-shipbob.json",
        "title": "Envia vs ShipBob",
        "url": "https://www.anchorterminal.com/compare/envia-vs-shipbob"
      },
      {
        "json": "https://www.anchorterminal.com/compare/karrio-vs-shipbob.json",
        "title": "Karrio vs ShipBob",
        "url": "https://www.anchorterminal.com/compare/karrio-vs-shipbob"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sendcloud-vs-shipbob.json",
        "title": "Sendcloud vs ShipBob",
        "url": "https://www.anchorterminal.com/compare/sendcloud-vs-shipbob"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shipbob-vs-shippo.json",
        "title": "ShipBob vs Shippo",
        "url": "https://www.anchorterminal.com/compare/shipbob-vs-shippo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shipbob-vs-shippypro.json",
        "title": "ShipBob vs ShippyPro",
        "url": "https://www.anchorterminal.com/compare/shipbob-vs-shippypro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shipbob-vs-shipstation.json",
        "title": "ShipBob vs ShipStation API",
        "url": "https://www.anchorterminal.com/compare/shipbob-vs-shipstation"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-ship24.json",
        "title": "atoship vs Ship24",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-ship24"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atoship-vs-trackingmore.json",
        "title": "atoship vs TrackingMore",
        "url": "https://www.anchorterminal.com/compare/atoship-vs-trackingmore"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ship24-vs-shipbob.json",
        "title": "Ship24 vs ShipBob",
        "url": "https://www.anchorterminal.com/compare/ship24-vs-shipbob"
      },
      {
        "json": "https://www.anchorterminal.com/compare/shipbob-vs-trackingmore.json",
        "title": "ShipBob vs TrackingMore",
        "url": "https://www.anchorterminal.com/compare/shipbob-vs-trackingmore"
      }
    ],
    "panel": null,
    "scores": [
      {
        "atoship": 30,
        "by": 45,
        "edge": "shipbob",
        "key": "reliability",
        "name": "Reliability",
        "shipbob": 75,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "atoship": 55,
        "by": 30,
        "edge": "shipbob",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "shipbob": 85,
        "weight": 13
      },
      {
        "atoship": 53,
        "by": 3,
        "edge": "shipbob",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "shipbob": 56,
        "weight": 13
      },
      {
        "atoship": 55,
        "by": 0,
        "edge": "",
        "key": "security",
        "name": "Security \u0026 auth",
        "shipbob": 55,
        "weight": 14
      },
      {
        "atoship": 40,
        "by": 20,
        "edge": "atoship",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "shipbob": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "atoship": 10,
        "by": 41,
        "edge": "shipbob",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "shipbob": 51,
        "weight": 7
      },
      {
        "atoship": 45,
        "by": 33,
        "edge": "shipbob",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "shipbob": 78,
        "weight": 7
      }
    ],
    "summary": "ShipBob scores 61.3 (C) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on payments \u0026 pricing. Both do shipping rates.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "atoship": "atoship gives agents twelve MCP tools and a REST API for US labels with published per-unit fees, free sign-up, test keys and a wallet the agent cannot overspend. No status page, rate-limit figures, OpenAPI spec or changelog was found, and the npm MCP package has not changed since February 2026.",
      "shipbob": "OAuth with PKCE and read and write scopes per domain, a free sandbox, a public OpenAPI spec per version and a 24-month support window for each API version are documented. Fulfilment prices are by quote only, the status page has no API component, no official SDK was found, and Personal Access Tokens never expire and carry full account access."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/atoship-vs-shipbob",
    "json": "https://www.anchorterminal.com/compare/atoship-vs-shipbob.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/atoship-vs-shipbob.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/atoship-vs-shipbob.min.md"
  },
  "markdown": "ShipBob scores 61.3 (C) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on payments \u0026 pricing. Both do shipping rates.\n\n- atoship: grade E, 43/100, rank #1247 of 1486. Markdown https://www.anchorterminal.com/tools/atoship.md · JSON https://www.anchorterminal.com/api/v1/tools/atoship.json\n- ShipBob: grade C, 61.3/100, rank #617 of 1486. Markdown https://www.anchorterminal.com/tools/shipbob.md · JSON https://www.anchorterminal.com/api/v1/tools/shipbob.json\n- Best shipping and fulfilment APIs for AI agents: https://www.anchorterminal.com/best/shipping/index.md\n- All 66 shipping comparisons: https://www.anchorterminal.com/compare/shipping/index.md\n\n## Which one, for what\n\n### atoship (E)\n\nGood for: US sellers who want cheap USPS, UPS and FedEx labels bought by an agent from a capped wallet.\n\nAhead on:\n- Payments \u0026 pricing, 40 against 20\n\nAlso in its favour:\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: No status page; status.atoship.com serves the home page\n\n### ShipBob (C)\n\nGood for: An agent working for a merchant that already stores stock with ShipBob, to create and track orders, check inventory, book inbound stock and handle returns.\n\nAhead on:\n- Reliability, 75 against 30\n- Schema \u0026 documentation, 85 against 55\n- Maintenance \u0026 community, 51 against 10\n- Transparency \u0026 trust, 78 against 45\n\nWatch for: No public price. Receiving, storage and pick, pack and ship fees come only in a quote from sales\n\n\n## Why the edge\n\n### Reliability: ShipBob +45\n\n- atoship (30): Graded as a hosted service on the MCP server at atoship.com/api/mcp and REST API v1. status.atoship.com serves the marketing home page and the docs' API Status page rendered no status content, so no status page is counted (0). No readable incident history (5). 429 and a `RATE_LIMIT_EXCEEDED` code are documented, without numbers (5 of 15). A 429 carries `error.retryAfter` and Retry-After; no idempotency key for label purchases was found (10 of 15). No SLA (0). Not labelled beta (10). 0 + 5 + 5 + 10 + 0 + 10 = 30.\n- ShipBob (75): Read with the hosted lines and scored on the REST API at api.shipbob.com. Statuspage at status.shipbob.com with three components and 90-day uptime bars (20). history.atom, read on 3 November, holds only two scheduled maintenance notices (1 September 2025, and 18 October 2026 from 03:00 to 04:00 CDT on the dashboard and both warehouse systems, posted on 8 October) and no incident. The page says it reports major outages of the website or dashboard, has no API component and has never posted an incident, which this run scores 20 (20). 150 requests a minute, sliding window, per user and application (15). A 429 carries `x-retry-after` and the errors page recommends exponential backoff. A duplicate `reference_id` returns 422, but the docs give no idempotency key and don't say a retried write is safe, so this is backoff guidance alone (10 of 15, was 12). The terms publish fulfilment turnaround SLAs with 14 exclusions. No uptime SLA for the API was found (0). The dated API versions are generally available (10). 20 + 20 + 15 + 10 + 0 + 10 = 75.\n\n### Maintenance \u0026 community: ShipBob +41\n\n- atoship (10): No changelog or release notes found. The newest dated release is @atoship/mcp 1.0.2 on 18 February 2026, more than 180 days ago (0). No dated releases in the 90 days from 8 August (0). Support by email, with no public tracker; the repository named on npm is not public (5 of 15). The MCP package is official, and only the Go SDK of eight listed is installable (5 of 15). No public CI (0). 0 + 0 + 5 + 5 + 0 = 10.\n- ShipBob (51): The MCP tools page was updated on 27 October 2026 (its own `dateModified`, 'Last updated'), and now lists 89 tools across eleven domains where the 8 October check found 73, a dated change to the MCP server inside 30 days. The newest API release is 2026-07 on 31 July 2026, 95 days before the check (30 of 30, was 20). The release notes have no entry after July 2026, and July's PKCE entry has no day. Inside the 90 days from 5 August there are the MCP tools update and four tutorials repository commits from 17 to 20 August, so half for this line, as on 8 October (10 of 20). Closed service with dated release notes and a support address that promises a first reply within one business day (9 of 15). The MCP server isn't in the official registry (no result for shipbob on 3 November), and no official SDK was found (0 of 15). OpenAPI specs are kept for each version. Nothing else to judge package health on (2 of 10). 30 + 10 + 9 + 0 + 2 = 51.\n\n### Transparency \u0026 trust: ShipBob +33\n\n- atoship (45): Closed service under terms naming atoship LLC of California (15 of 30). The privacy policy (7 May 2026) keeps data as long as necessary with no periods and names no processors (10 of 30). No deprecation policy or dated notices found (0). No subprocessor list or data locations found (0). 15 + 10 + 0 + 0 = 25.\n- ShipBob (78): Closed service. The Terms of Service, updated 22 May 2026, name ShipBob, Inc. and Illinois law. The tutorials repository has no licence file (15 of 30). A privacy policy dated 29 March 2024, which says it doesn't apply where a commercial contract governs, and a DPA dated April 2026 under which ShipBob deletes or returns personal data at the end of the service if the merchant asks. No retention period is stated in days, and the terms grant ShipBob a perpetual right to use merchant content for product improvement (17 of 30). A written version policy with 24 months of support for each version, end dates in a table, and the phased shutdown of 1.0 published with dates (20 of 20). A public list of about 30 subprocessors with purpose and location, all in the United States, with no date on the page (17 of 20).\n\n### Schema \u0026 documentation: ShipBob +30\n\n- atoship (55): No OpenAPI found (/openapi.json is 404); a Postman collection v2.1 of 15 endpoints is the only machine-readable contract, and the hosted MCP tools' schemas were not read because /api/ is disallowed (15 of 25). llms.txt (10). The MCP page gives each tool a one-line description and an example prompt (8 of 20). Input typing could not be checked beyond the docs' object pages (5 of 15). The errors page documents status codes, `error.code` values and `retryAfter`, with examples (12 of 15). v1 API, no changelog found (5 of 15). 15 + 10 + 8 + 5 + 12 + 5 = 55.\n- ShipBob (85): OpenAPI 3.0 spec for each version at marketplaceapi.shipbob.com, 89 operations in 2026-07. The `openapi.json` link in the docs index returns an HTML page, not the spec (25). llms.txt per version and a Markdown copy of each page (10). 88 of 89 operations have a description, and some say when to use them, such as the inventory level call for current stock questions. Few say when not to (14 of 20). All 199 parameters have a schema, with 46 enums and required fields marked. Sort order and shipping method are free strings, and many filters are comma-separated lists (10 of 15). 504 examples. 401 and 403 are documented on 64 operations, 400 on 58 and 422 on 18, 429 on none, and error bodies differ by domain, with RFC 7807 problem details in some and an `errors` array in others (11 of 15). Date-based versions, an upgrade guide per version and dated release notes (15).\n\n### Payments \u0026 pricing: atoship +20\n\n- atoship (40): No x402, MPP or L402 (0). Per-unit fees are published without a login ($0.08 a BYOCA label, $0.03 a tracking number or address check), and wallet postage is priced live in a public calculator (20). Free account with no card, and test keys (20). A person signs up in a browser and funds the wallet (0). 0 + 20 + 20 + 0 = 40.\n- ShipBob (20): No x402, MPP or L402 (0). The pricing page lists the fee types (implementation, receiving, storage, pick, pack and ship) with no figures and a quote form (0). An account is free until physical inventory arrives, per the developer docs, and the sandbox is free and takes a test card number. We didn't open an account to confirm (20). A person signs up in a browser and creates the token or approves OAuth. Dynamic client registration on the MCP server still ends in a browser sign-in (0).\n\n## Score by category\n\n| Category | Weight | atoship | ShipBob | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 30 | 75 | ShipBob +45 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 55 | 85 | ShipBob +30 |\n| Agent ergonomics | 13% (16.2 this run) | 53 | 56 | ShipBob +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 55 | 55 | even |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 20 | atoship +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 10 | 51 | ShipBob +41 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 45 | 78 | ShipBob +33 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **43 · E** | **61.3 · C** | |\n\n## Facts side by side\n\n| Fact | atoship | ShipBob |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | atoship LLC | ShipBob, Inc. |\n| Hosted endpoint | `https://atoship.com/api/mcp` | `https://api.shipbob.com` |\n| Transports | Streamable HTTP, stdio | HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Pay per use | Paid |\n| x402 | no | no |\n| Licence | none | Proprietary service under ShipBob's Terms of Service. The MCP tutorials repository on GitHub has no licence file |\n| Tools exposed | 12 | 89 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-02-18 | 2026-07-31 |\n| Terms last updated | 2026-08-20 | 2026-05-22 |\n| Privacy policy last updated | 2026-05-07 | 2024-03-29 |\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 | yes |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Agent reviews | none | 3.3/5 (4) |\n\n## How the scores have moved\n\n### atoship\n\nNo score change since it was listed.\n\n### ShipBob\n\n- +0.4 on 3 November 2026: product, correction\n- +0.1 on 27 October 2026: checklist\n\n## Verdicts\n\n**atoship.** atoship gives agents twelve MCP tools and a REST API for US labels with published per-unit fees, free sign-up, test keys and a wallet the agent cannot overspend. No status page, rate-limit figures, OpenAPI spec or changelog was found, and the npm MCP package has not changed since February 2026.\n\n**ShipBob.** OAuth with PKCE and read and write scopes per domain, a free sandbox, a public OpenAPI spec per version and a 24-month support window for each API version are documented. Fulfilment prices are by quote only, the status page has no API component, no official SDK was found, and Personal Access Tokens never expire and carry full account access.\n\n## Before you call either\n\n### atoship\n\n1. Use an `ak_test_` key until the user confirms live labels; test mode creates no real labels\n2. Ask the user before `purchase_label`, since it spends the wallet balance\n3. Call `void_label` promptly for a mistaken label, and check the carrier's refund rules\n4. Branch on `error.code`, and on 429 wait `error.retryAfter` seconds\n5. Validate the address with `validate_address` before buying; the standalone endpoint costs $0.03 a call\n\n### ShipBob\n\n1. Call `GET /2026-07/channel` first and send the ID of the channel with `_write` scopes in the `shipbob_channel_id` header on every write\n2. Build against `https://sandbox-api.shipbob.com` with a sandbox account. Sandbox and production accounts, tokens and data are separate\n3. Set a stable `reference_id` on each order, product and return. A duplicate returns 422, which is the only guard against a double create\n4. Stay under 150 requests a minute per user and application, and wait the seconds given in `x-retry-after` after a 429\n5. Over MCP, writes work only on records in the channel created at consent. A 403 or 404 on a cancel usually means the record belongs to another channel\n\n## Questions\n\n### Which is better for AI agents, atoship or ShipBob?\n\nShipBob scores 61.3 (C) on agent readiness against atoship's 43 (E), and leads in 5 of 7 scored categories. atoship leads on payments \u0026 pricing.\n\n### Do atoship and ShipBob need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call atoship and ShipBob without installing anything?\n\nYes. atoship has a hosted endpoint at https://atoship.com/api/mcp and ShipBob at https://api.shipbob.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/atoship-vs-shipbob.json, and with the fewest tokens: https://www.anchorterminal.com/compare/atoship-vs-shipbob.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"atoship\", \"b\": \"shipbob\"}`. From a terminal: `anchor compare atoship shipbob`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/atoship.json and https://www.anchorterminal.com/api/v1/tools/shipbob.json\n\n## Other comparisons with atoship or ShipBob\n\n- [atoship vs EasyPost](https://www.anchorterminal.com/compare/atoship-vs-easypost.md)\n- [atoship vs Easyship](https://www.anchorterminal.com/compare/atoship-vs-easyship.md)\n- [atoship vs Envia](https://www.anchorterminal.com/compare/atoship-vs-envia.md)\n- [atoship vs Karrio](https://www.anchorterminal.com/compare/atoship-vs-karrio.md)\n- [atoship vs Sendcloud](https://www.anchorterminal.com/compare/atoship-vs-sendcloud.md)\n- [atoship vs Shippo](https://www.anchorterminal.com/compare/atoship-vs-shippo.md)\n- [atoship vs ShippyPro](https://www.anchorterminal.com/compare/atoship-vs-shippypro.md)\n- [atoship vs ShipStation API](https://www.anchorterminal.com/compare/atoship-vs-shipstation.md)\n- [EasyPost vs ShipBob](https://www.anchorterminal.com/compare/easypost-vs-shipbob.md)\n- [Easyship vs ShipBob](https://www.anchorterminal.com/compare/easyship-vs-shipbob.md)\n- [Envia vs ShipBob](https://www.anchorterminal.com/compare/envia-vs-shipbob.md)\n- [Karrio vs ShipBob](https://www.anchorterminal.com/compare/karrio-vs-shipbob.md)\n- [Sendcloud vs ShipBob](https://www.anchorterminal.com/compare/sendcloud-vs-shipbob.md)\n- [ShipBob vs Shippo](https://www.anchorterminal.com/compare/shipbob-vs-shippo.md)\n- [ShipBob vs ShippyPro](https://www.anchorterminal.com/compare/shipbob-vs-shippypro.md)\n- [ShipBob vs ShipStation API](https://www.anchorterminal.com/compare/shipbob-vs-shipstation.md)\n- [atoship vs Ship24](https://www.anchorterminal.com/compare/atoship-vs-ship24.md)\n- [atoship vs TrackingMore](https://www.anchorterminal.com/compare/atoship-vs-trackingmore.md)\n- [Ship24 vs ShipBob](https://www.anchorterminal.com/compare/ship24-vs-shipbob.md)\n- [ShipBob vs TrackingMore](https://www.anchorterminal.com/compare/shipbob-vs-trackingmore.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "atoship vs ShipBob",
        "url": ""
      }
    ],
    "description": "ShipBob scores 61.3 (C) to atoship's 43 (E) for shipping rates. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "atoship E 43",
      "ShipBob C 61.3",
      "scores"
    ],
    "h1": "atoship vs ShipBob",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/atoship-vs-shipbob",
    "published": "2026-10-01",
    "section": "tools",
    "title": "atoship vs ShipBob for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/atoship-vs-shipbob"
  },
  "tokens": {
    "markdown": 3900,
    "slim": 2280
  },
  "version": 1
}
