{
  "data": {
    "similar": [
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/easyship.json",
        "name": "Easyship",
        "score": 70.6,
        "shared": [
          "shipping.rates",
          "shipping.labels",
          "shipping.tracking",
          "shipping.address-validation",
          "shipping.returns"
        ],
        "slug": "easyship"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/sendcloud.json",
        "name": "Sendcloud",
        "score": 64.5,
        "shared": [
          "shipping.rates",
          "shipping.labels",
          "shipping.tracking",
          "shipping.address-validation",
          "shipping.returns"
        ],
        "slug": "sendcloud"
      },
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/shippo.json",
        "name": "Shippo",
        "score": 61.9,
        "shared": [
          "shipping.rates",
          "shipping.labels",
          "shipping.tracking",
          "shipping.address-validation",
          "shipping.returns"
        ],
        "slug": "shippo"
      },
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/easypost.json",
        "name": "EasyPost",
        "score": 57.4,
        "shared": [
          "shipping.rates",
          "shipping.labels",
          "shipping.tracking",
          "shipping.address-validation",
          "shipping.returns"
        ],
        "slug": "easypost"
      },
      {
        "grade": "D",
        "json": "https://www.anchorterminal.com/tools/shipstation.json",
        "name": "ShipStation API",
        "score": 51,
        "shared": [
          "shipping.rates",
          "shipping.labels",
          "shipping.tracking",
          "shipping.address-validation",
          "shipping.returns"
        ],
        "slug": "shipstation"
      },
      {
        "grade": "F",
        "json": "https://www.anchorterminal.com/tools/shippypro.json",
        "name": "ShippyPro",
        "score": 37,
        "shared": [
          "shipping.rates",
          "shipping.labels",
          "shipping.tracking",
          "shipping.address-validation",
          "shipping.returns"
        ],
        "slug": "shippypro"
      }
    ],
    "tool": {
      "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",
      "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"
      },
      "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"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 30,
            "points": 6,
            "reason": "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.",
            "checked": "2026-11-06"
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 55,
            "points": 8.94,
            "reason": "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.",
            "checked": "2026-11-06"
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 53,
            "points": 8.61,
            "reason": "12 MCP tools (15, for 11 to 30). List tools for orders and labels, with paging not documented in the pages read (8 of 20). Machine-readable error codes with a retry delay (18 of 20). The npm package's tools carry no readOnlyHint or destructiveHint, and no idempotency key was found; `void_label` undoes a mistaken purchase (5 of 20). Only the Go SDK installs, the hosted server is one URL, and test keys give a safe default (7 of 15). 15 + 8 + 18 + 5 + 7 = 53.",
            "checked": "2026-11-06"
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 55,
            "points": 9.63,
            "reason": "Live and test API keys sent as Bearer tokens, with the docs advising separate keys with limited scopes and rotation, and OAuth with PKCE for the hosted MCP server (25 of 30). Test keys create no real labels, the consent screen names label buying and voiding, and the docs say the agent can spend only funds already in the wallet, with no per-call confirmation (12 of 20). Responses carry addresses and carrier tracking data rather than free text from strangers (10). No audit log found (0). security.txt valid to December 2027 with a security contact; no certification, bounty or disclosure policy beyond the terms (8 of 20). 25 + 12 + 10 + 0 + 8 = 55.",
            "checked": "2026-11-06"
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 40,
            "points": 5,
            "reason": "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.",
            "checked": "2026-11-06"
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 10,
            "points": 0.88,
            "reason": "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.",
            "checked": "2026-11-06"
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 45,
            "points": 3.94,
            "note": "editorial 25, provenance 65",
            "reason": "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.",
            "checked": "2026-11-06"
          }
        ],
        "assessment": {
          "date": "2026-11-06",
          "basis": "public evidence",
          "confidence": "low",
          "notes": {
            "ergonomics": "12 MCP tools (15, for 11 to 30). List tools for orders and labels, with paging not documented in the pages read (8 of 20). Machine-readable error codes with a retry delay (18 of 20). The npm package's tools carry no readOnlyHint or destructiveHint, and no idempotency key was found; `void_label` undoes a mistaken purchase (5 of 20). Only the Go SDK installs, the hosted server is one URL, and test keys give a safe default (7 of 15). 15 + 8 + 18 + 5 + 7 = 53.",
            "maintenance": "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.",
            "payments": "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.",
            "reliability": "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.",
            "schema": "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.",
            "security": "Live and test API keys sent as Bearer tokens, with the docs advising separate keys with limited scopes and rotation, and OAuth with PKCE for the hosted MCP server (25 of 30). Test keys create no real labels, the consent screen names label buying and voiding, and the docs say the agent can spend only funds already in the wallet, with no per-call confirmation (12 of 20). Responses carry addresses and carrier tracking data rather than free text from strangers (10). No audit log found (0). security.txt valid to December 2027 with a security contact; no certification, bounty or disclosure policy beyond the terms (8 of 20). 25 + 12 + 10 + 0 + 8 = 55.",
            "transparency": "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."
          },
          "sources": [
            {
              "what": "llms.txt",
              "url": "https://atoship.com/llms.txt",
              "seen": "2026-11-06"
            },
            {
              "what": "MCP documentation",
              "url": "https://atoship.com/docs/mcp",
              "seen": "2026-11-06"
            },
            {
              "what": "API docs",
              "url": "https://atoship.com/docs/api",
              "seen": "2026-11-06"
            },
            {
              "what": "errors reference",
              "url": "https://atoship.com/docs/api-reference/core/errors",
              "seen": "2026-11-06"
            },
            {
              "what": "client libraries",
              "url": "https://atoship.com/docs/client-libraries",
              "seen": "2026-11-06"
            },
            {
              "what": "Postman collection page",
              "url": "https://atoship.com/docs/tools/postman",
              "seen": "2026-11-06"
            },
            {
              "what": "pricing",
              "url": "https://atoship.com/pricing",
              "seen": "2026-11-06"
            },
            {
              "what": "terms",
              "url": "https://atoship.com/terms",
              "seen": "2026-11-06"
            },
            {
              "what": "privacy policy",
              "url": "https://atoship.com/privacy",
              "seen": "2026-11-06"
            },
            {
              "what": "security.txt",
              "url": "https://atoship.com/.well-known/security.txt",
              "seen": "2026-11-06"
            },
            {
              "what": "MCP package on npm",
              "url": "https://registry.npmjs.org/@atoship/mcp",
              "seen": "2026-11-06"
            }
          ],
          "openQuestions": [
            "unchecked: the hosted MCP server's tool schemas and annotations; /api/ is disallowed in robots.txt and nothing was sent there",
            "Numeric rate limits for the REST API and MCP server",
            "Whether API keys can be scoped as the docs suggest, and to what",
            "Whether the hosted MCP server runs code newer than npm's 1.0.2",
            "Refund rules for voided labels, which were not found on the pages read",
            "No legal entity was named on the home page, as the lead noted; the terms name atoship LLC"
          ]
        },
        "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
        },
        "scoreHistory": [
          {
            "date": "2026-11-06",
            "grade": "E",
            "kind": "listed",
            "method": "0.7",
            "score": 43
          }
        ]
      },
      "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"
      },
      "notable": [
        "The MCP docs list 12 tools: get_shipping_rates, purchase_label, track_package, validate_address, create_order, list_orders, get_order, get_label, void_label, list_labels, get_account and list_carrier_accounts (https://atoship.com/docs/mcp)",
        "The docs say the assistant can only spend funds already in the wallet and cannot charge a card or take the balance negative (https://atoship.com/docs/mcp)",
        "Errors return an UPPER_SNAKE_CASE `error.code`, and a 429 carries `error.retryAfter` and the Retry-After header (https://atoship.com/docs/api-reference/core/errors)",
        "@atoship/mcp 1.0.2 on npm, MIT, last published 18 February 2026; its repository github.com/atoship-dev/atoship is not public (https://registry.npmjs.org/@atoship/mcp)",
        "The client libraries page says most SDKs are not published to their registries yet and only the Go SDK installs (https://atoship.com/docs/client-libraries)",
        "The terms of 20 August 2026 name atoship LLC, a California limited liability company (https://atoship.com/terms)"
      ],
      "area": "business",
      "details": [
        {
          "label": "Surface listed",
          "value": "The hosted MCP server at atoship.com/api/mcp and REST API v1, read from atoship.com's docs, pricing, terms and privacy pages and the npm package's published files on 6 November 2026. robots.txt disallows /api/, so nothing was sent to the API or MCP endpoints"
        },
        {
          "label": "Carriers",
          "value": "USPS, UPS, FedEx and DHL, plus DHL eCommerce, OnTrac and, per the pricing page, more than 50 regional carriers"
        },
        {
          "label": "Developer tools",
          "value": "An API playground, a Postman collection v2.1 with 15 endpoints, a CLI, client library pages and the MCP server"
        },
        {
          "label": "Revenue",
          "value": "The pricing page says atoship earns commissions from carrier partners on wallet labels plus the metered fees"
        },
        {
          "label": "Legal entity",
          "value": "atoship LLC, a California limited liability company, per the terms of 20 August 2026, with arbitration and a class action waiver"
        }
      ],
      "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,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "atoship LLC",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": "atoship.com, no registry record we could read",
            "points": 0,
            "max": 15,
            "state": "no"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "atoship.com",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Terms of service",
            "value": "read, states 5 of the 7 things a reader expects",
            "points": 8.3,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Privacy policy",
            "value": "read, states 8 of the 8 things a reader expects",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Status page",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "Changelog",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "security.txt",
            "value": "valid",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "People named",
            "value": "not researched yet",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Support route",
            "value": "a support address, help pages",
            "points": 5,
            "max": 5,
            "state": "ok"
          }
        ],
        "policies": [
          {
            "kind": "terms",
            "url": "https://atoship.com/terms",
            "state": "read",
            "readAt": "2026-11-06",
            "statedDate": "2026-08-20",
            "words": 4221,
            "points": 8.3,
            "max": 10,
            "expected": [
              {
                "key": "terms.date",
                "label": "Gives the date it was last updated",
                "found": true,
                "quote": "Last updated: August 20, 2026",
                "says": "Last updated 2026-08-20"
              },
              {
                "key": "terms.law",
                "label": "Names the governing law or courts",
                "found": true,
                "quote": "The atoship service is operated by atoship LLC, a limited liability company formed under the laws of the State of California, United States.",
                "says": "The law of the State of California"
              },
              {
                "key": "terms.liability",
                "label": "States a limit on its liability",
                "found": true,
                "quote": "atoship's total aggregate liability to you for all claims arising out of or relating to these Terms or your use of the services shall not exceed the total amount paid by you to atoship in the twelve (12) months preceding the event giving rise to the claim.",
                "says": "Capped at the fees paid in the 12 months before the claim"
              },
              {
                "key": "terms.termination",
                "label": "Says how the agreement or account can be ended",
                "found": true,
                "quote": "We may terminate or suspend your account and bar access to the service immediately, without prior notice or liability, under our sole discretion, for any reason whatsoever, including without limitation if you breach the Terms of Use."
              },
              {
                "key": "terms.changes",
                "label": "Says how changes to the terms are announced",
                "found": false
              },
              {
                "key": "terms.use",
                "label": "Lists what users may not do",
                "found": true,
                "quote": "This is the grant of a license, not a transfer of title, and under this license you may not:"
              },
              {
                "key": "terms.sla",
                "label": "Refers to a service level or uptime commitment",
                "found": false
              }
            ],
            "toKnow": [
              {
                "key": "terms.cutoff",
                "label": "Says access can be ended without notice or for any reason",
                "found": true,
                "quote": "We reserve the right to modify, suspend, or discontinue any part of our services at any time with reasonable notice."
              },
              {
                "key": "terms.arbitration",
                "label": "Requires arbitration or waives class actions",
                "found": true,
                "quote": "These Terms contain an arbitration agreement (Section 19) and a class action waiver (Section 20)."
              }
            ]
          },
          {
            "kind": "privacy",
            "url": "https://atoship.com/privacy",
            "state": "read",
            "readAt": "2026-11-06",
            "statedDate": "2026-05-07",
            "words": 859,
            "points": 10,
            "max": 10,
            "expected": [
              {
                "key": "privacy.date",
                "label": "Gives the date it was last updated",
                "found": true,
                "quote": "Last updated: May 7, 2026",
                "says": "Last updated 2026-05-07"
              },
              {
                "key": "privacy.collected",
                "label": "Says what personal data is collected",
                "found": true,
                "quote": "This Privacy Policy explains how we collect, use, disclose, and safeguard your information when you use our shipping management platform and related services."
              },
              {
                "key": "privacy.retention",
                "label": "Says how long data is kept",
                "found": true,
                "quote": "We retain your information for as long as necessary to:",
                "says": "For as long as needed, with no period named"
              },
              {
                "key": "privacy.processors",
                "label": "Says who else receives the data",
                "found": true,
                "quote": "We share information with third-party service providers who perform services on our behalf, including:"
              },
              {
                "key": "privacy.sale",
                "label": "Says whether personal data is sold or shared for advertising",
                "found": true,
                "quote": "The right to opt-out of the sale of personal information (we do not sell personal information)",
                "says": "Says it does not sell personal data"
              },
              {
                "key": "privacy.rights",
                "label": "Says what rights people have over their data",
                "found": true,
                "quote": "If you are a California resident, you have additional rights under the California Consumer Privacy Act (CCPA), including:"
              },
              {
                "key": "privacy.contact",
                "label": "Gives a privacy contact",
                "found": true,
                "quote": "If you have questions or concerns about this Privacy Policy or our data practices, please contact us at:"
              },
              {
                "key": "privacy.transfers",
                "label": "Says where data is transferred or stored",
                "found": true,
                "quote": "Our services are not intended for individuals under the age of 18."
              }
            ]
          }
        ]
      },
      "humans": {
        "slug": "atoship",
        "checked": "2026-11-06",
        "company": "atoship",
        "peopleNote": "atoship.com/about names no founder or team member, and the terms and privacy policy name only atoship LLC of California. On 6 November 2026 the sitemap had no team, press or careers page, the @atoship/mcp npm package names only atoship as author, the GitHub organisation atoship (which links atoship.com) shows no public members, and a search found nothing on the company's people or funding. Nobody is listed, and no investors, total raised or valuation were found.",
        "companySocial": {
          "github": "https://github.com/atoship"
        },
        "support": {
          "emails": [
            "support@atoship.com"
          ],
          "urls": [
            "https://atoship.com/docs/mcp"
          ],
          "contactEmails": [
            "security@atoship.com"
          ]
        },
        "sources": [
          "https://atoship.com/about",
          "https://atoship.com/terms",
          "https://atoship.com/llms.txt",
          "https://atoship.com/.well-known/security.txt",
          "https://github.com/atoship",
          "https://www.npmjs.com/package/@atoship/mcp"
        ],
        "ownership": {
          "status": "private",
          "checked": "2026-11-06",
          "sources": [
            "https://atoship.com/terms"
          ]
        }
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/atoship.json",
      "live": {
        "slug": "atoship",
        "probe": {
          "target": "https://atoship.com/api/mcp",
          "method": "get",
          "lastAt": "2026-11-07T17:49:28.67916695Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 387,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 366,
          "p95ms24h": 455,
          "samples24h": 195,
          "samples30d": 195,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 182,
              "ok": 182
            }
          ]
        },
        "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-07T17:49:28.67916695Z"
      }
    },
    "verify": {
      "accepts": "a page on atoship.com or one of its subdomains",
      "badgeUrl": "https://www.anchorterminal.com/badges/atoship.svg",
      "body": {
        "slug": "atoship",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/atoship",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/atoship\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/atoship.svg\" alt=\"atoship on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![atoship on Anchor Terminal](https://www.anchorterminal.com/badges/atoship.svg)](https://www.anchorterminal.com/tools/atoship)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/atoship\"\u003eatoship on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/atoship",
    "json": "https://www.anchorterminal.com/tools/atoship.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/atoship.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "pricing": "https://www.anchorterminal.com/tools/atoship#pricing",
    "reviews": "https://www.anchorterminal.com/tools/atoship#reviews",
    "slim": "https://www.anchorterminal.com/tools/atoship.min.md"
  },
  "markdown": "## Overview\n\n**Grade E · 43/100 · rank #1247 of 1486 · #9 in Shipping \u0026 fulfilment · not agent-ready · confidence low**\n\n\n## Assessment\n\natoship 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## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | atoship LLC (https://atoship.com) |\n| Kind | HTTP API |\n| Category | Shipping \u0026 fulfilment (https://www.anchorterminal.com/categories/shipping) |\n| Transport | Streamable HTTP, stdio |\n| Endpoint | `https://atoship.com/api/mcp` |\n| Auth | OAuth or key · 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. |\n| Pricing | Pay per use ($0.08 / tx) · 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. |\n| x402 | No · 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. |\n| Licence | unknown |\n| Tools exposed | 12 |\n| Packages | npm: `@atoship/mcp` |\n| Docs | https://atoship.com/docs/mcp |\n| llms.txt | https://atoship.com/llms.txt |\n| Last release | 2026-02-18 |\n| Surface listed | The hosted MCP server at atoship.com/api/mcp and REST API v1, read from atoship.com's docs, pricing, terms and privacy pages and the npm package's published files on 6 November 2026. robots.txt disallows /api/, so nothing was sent to the API or MCP endpoints |\n| Carriers | USPS, UPS, FedEx and DHL, plus DHL eCommerce, OnTrac and, per the pricing page, more than 50 regional carriers |\n| Developer tools | An API playground, a Postman collection v2.1 with 15 endpoints, a CLI, client library pages and the MCP server |\n| Revenue | The pricing page says atoship earns commissions from carrier partners on wallet labels plus the metered fees |\n| Legal entity | atoship LLC, a California limited liability company, per the terms of 20 August 2026, with arbitration and a class action waiver |\n| Capabilities | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns |\n| Tags | official, hosted, mcp, remote-mcp, oauth, llms-txt, usage, prepaid, no-card, sandbox, webhooks, postman |\n| JSON | https://www.anchorterminal.com/api/v1/tools/atoship.json |\n\n## Score breakdown (methodology v0.7, October 2026 research run)\n\nAssessed 2026-11-06 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: low. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 30 | 6.0 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 55 | 8.9 |\n| Agent ergonomics | 13% | 16.2 | 53 | 8.6 |\n| Security \u0026 auth | 14% | 17.5 | 55 | 9.6 |\n| Payments \u0026 pricing | 10% | 12.5 | 40 | 5.0 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 10 | 0.9 |\n| Transparency \u0026 trust (editorial 25, provenance 65) | 7% | 8.8 | 45 | 3.9 |\n| Negative events | up to −15 | up to −15 | none recorded | 0 |\n| **Total** | | | | **43 → E** |\n\n### Why each score\n\n- Reliability 30 (checked 2026-11-06): 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- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 55 (checked 2026-11-06): 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- Agent ergonomics 53 (checked 2026-11-06): 12 MCP tools (15, for 11 to 30). List tools for orders and labels, with paging not documented in the pages read (8 of 20). Machine-readable error codes with a retry delay (18 of 20). The npm package's tools carry no readOnlyHint or destructiveHint, and no idempotency key was found; `void_label` undoes a mistaken purchase (5 of 20). Only the Go SDK installs, the hosted server is one URL, and test keys give a safe default (7 of 15). 15 + 8 + 18 + 5 + 7 = 53.\n- Security \u0026 auth 55 (checked 2026-11-06): Live and test API keys sent as Bearer tokens, with the docs advising separate keys with limited scopes and rotation, and OAuth with PKCE for the hosted MCP server (25 of 30). Test keys create no real labels, the consent screen names label buying and voiding, and the docs say the agent can spend only funds already in the wallet, with no per-call confirmation (12 of 20). Responses carry addresses and carrier tracking data rather than free text from strangers (10). No audit log found (0). security.txt valid to December 2027 with a security contact; no certification, bounty or disclosure policy beyond the terms (8 of 20). 25 + 12 + 10 + 0 + 8 = 55.\n- Payments \u0026 pricing 40 (checked 2026-11-06): 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- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 10 (checked 2026-11-06): 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- Transparency \u0026 trust 45 (checked 2026-11-06): 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\nFix list, everything this grade says the listing lacks, the biggest gain first (17 items). What it covers is at https://www.anchorterminal.com/fixes/atoship.md (JSON https://www.anchorterminal.com/fixes/atoship.json). The whole list for a coding agent comes from `POST https://www.anchorterminal.com/api/v1/fix-list` with `{\"listing\": \"atoship\", \"plan\": \"read\"}`, free while the beta runs\n\n### What we couldn't check\n\n- unchecked: the hosted MCP server's tool schemas and annotations; /api/ is disallowed in robots.txt and nothing was sent there\n- Numeric rate limits for the REST API and MCP server\n- Whether API keys can be scoped as the docs suggest, and to what\n- Whether the hosted MCP server runs code newer than npm's 1.0.2\n- Refund rules for voided labels, which were not found on the pages read\n- No legal entity was named on the home page, as the lead noted; the terms name atoship LLC\n\n### Sources\n\n- llms.txt: \u003chttps://atoship.com/llms.txt\u003e (seen 2026-11-06)\n- MCP documentation: \u003chttps://atoship.com/docs/mcp\u003e (seen 2026-11-06)\n- API docs: \u003chttps://atoship.com/docs/api\u003e (seen 2026-11-06)\n- errors reference: \u003chttps://atoship.com/docs/api-reference/core/errors\u003e (seen 2026-11-06)\n- client libraries: \u003chttps://atoship.com/docs/client-libraries\u003e (seen 2026-11-06)\n- Postman collection page: \u003chttps://atoship.com/docs/tools/postman\u003e (seen 2026-11-06)\n- pricing: \u003chttps://atoship.com/pricing\u003e (seen 2026-11-06)\n- terms: \u003chttps://atoship.com/terms\u003e (seen 2026-11-06)\n- privacy policy: \u003chttps://atoship.com/privacy\u003e (seen 2026-11-06)\n- security.txt: \u003chttps://atoship.com/.well-known/security.txt\u003e (seen 2026-11-06)\n- MCP package on npm: \u003chttps://registry.npmjs.org/@atoship/mcp\u003e (seen 2026-11-06)\n\n## Score history\n\nEvery move of a score since the listing was graded, newest first, with its cause. A score can't move without an entry here. JSON: https://www.anchorterminal.com/api/v1/tools/atoship/history.json\n\n- 2026-11-06: graded 43 E (methodology 0.7)\n\n## Who's behind it (provenance 65/100, checked 2026-11-06)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | atoship LLC | 20/20 |\n| Domain age | atoship.com, no registry record we could read | 0/15 |\n| Endpoint on the vendor's domain | atoship.com | 15/15 |\n| Terms of service | read, states 5 of the 7 things a reader expects | 8.3/10 |\n| Privacy policy | read, states 8 of the 8 things a reader expects | 10/10 |\n| Status page | not found | 0/10 |\n| Changelog | not found | 0/10 |\n| security.txt | valid | 10/10 |\n| People named | not researched yet | n/a |\n| Support route | a support address, help pages | 5/5 |\n\natoship.com/robots.txt disallows /api/, /dashboard/, /admin/, /_next/ and /static/ for all agents, so the MCP and REST endpoints under /api/ were not requested.\n\nTerms 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.\n\nsecurity.txt names security@atoship.com, points its policy to the terms and expires 31 December 2027.\n\nstatus.atoship.com answers with the marketing home page and /docs/status rendered no status content, so no status page is recorded.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service** (https://atoship.com/terms), read 2026-11-06, dated 2026-08-20, states 5 of the 7 things a reader expects.\n\n- To know. Says access can be ended without notice or for any reason. \"We reserve the right to modify, suspend, or discontinue any part of our services at any time with reasonable notice.\"\n- To know. Requires arbitration or waives class actions. \"These Terms contain an arbitration agreement (Section 19) and a class action waiver (Section 20).\"\n- Gives the date it was last updated. Last updated 2026-08-20.\n- Names the governing law or courts. The law of the State of California.\n- States a limit on its liability. Capped at the fees paid in the 12 months before the claim.\n- Not found in the text. Says how changes to the terms are announced.\n- Not found in the text. Refers to a service level or uptime commitment.\n\n**Privacy policy** (https://atoship.com/privacy), read 2026-11-06, dated 2026-05-07, states 8 of the 8 things a reader expects.\n\n- Gives the date it was last updated. Last updated 2026-05-07.\n- Says how long data is kept. For as long as needed, with no period named.\n- Says whether personal data is sold or shared for advertising. Says it does not sell personal data.\n\n## Humans behind the project (researched 2026-11-06 from public pages, not part of the grade)\n\n### Key people\n\n- No people named yet.\n- Note: atoship.com/about names no founder or team member, and the terms and privacy policy name only atoship LLC of California. On 6 November 2026 the sitemap had no team, press or careers page, the @atoship/mcp npm package names only atoship as author, the GitHub organisation atoship (which links atoship.com) shows no public members, and a search found nothing on the company's people or funding. Nobody is listed, and no investors, total raised or valuation were found.\n- atoship: GitHub https://github.com/atoship\n\n### Getting support\n\n- Support email: support@atoship.com\n- Help: https://atoship.com/docs/mcp\n- Sources: https://atoship.com/about, https://atoship.com/terms, https://atoship.com/llms.txt, https://atoship.com/.well-known/security.txt, https://github.com/atoship, https://www.npmjs.com/package/@atoship/mcp\n\n## Live (updated 2026-11-07 17:49 UTC)\n\n- Right now: up, HTTP 405, 387 ms, checked 2026-11-07 17:49 UTC (get on `https://atoship.com/api/mcp`)\n- Uptime 24h 100.0% (195 probes) · 30 days 100.0% (195 probes) · p50 366 ms · p95 455 ms\n- npm `@atoship/mcp` 1.0.2\n- security.txt: valid, expires 2027-12-31T23:59:59.000Z\n- Watching privacy \u003chttps://atoship.com/privacy\u003e\n- Watching terms \u003chttps://atoship.com/terms\u003e\n- Tools: the endpoint asks for credentials before listing them (checked 2026-11-07 01:42 UTC)\n- Always current: https://www.anchorterminal.com/api/v1/live/atoship.json\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Prices\n\n| Item | Price | Unit | Note |\n| --- | --- | --- | --- |\n| Label on your own carrier account | $0.08 | per transaction | Per label; the carrier bills postage |\n| External tracking number | $0.03 | per transaction | Only for labels bought elsewhere |\n| Address Verification API call | $0.03 | per call | Standalone endpoint only; checks inside rate quotes are free |\n\nAcross all listings: https://www.anchorterminal.com/prices/index.md\n\n## Strengths\n\n- Free account with no card, and `ak_test_` keys that create no real labels\n- Per-unit fees published: $0.08 a label on your own carrier account, $0.03 a tracking number or address check\n- Hosted MCP server with OAuth and PKCE, whose consent screen names label buying and voiding\n- An agent can spend only what is already in the wallet\n- Errors carry machine-readable codes and a `retryAfter` on 429\n\n## Weaknesses\n\n- No status page; status.atoship.com serves the home page\n- Rate limits are not given in numbers, and no OpenAPI spec was found\n- No changelog, and @atoship/mcp was last published on 18 February 2026\n- Most listed SDKs are not published; only Go installs\n- No security certification, subprocessor list or retention periods found\n\n\n\n## Before you call it (notes for agents)\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## Connect\n\nInstall:\n\n```bash\nnpx -y @atoship/mcp\n```\n\nClaude Code:\n\n```bash\nclaude mcp add --transport http atoship https://atoship.com/api/mcp\n```\n\nMCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"atoship\": {\n      \"url\": \"https://atoship.com/api/mcp\"\n    }\n  }\n}\n```\n\nThrough letme: https://letme.dev/atoship. letme answers with the pick and how to call it direct. How it works: https://www.anchorterminal.com/letme/index.md\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| Easyship | BB | 70.6 | 190 | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns | no | https://www.anchorterminal.com/tools/easyship.md |\n| Sendcloud | B | 64.5 | 461 | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns | no | https://www.anchorterminal.com/tools/sendcloud.md |\n| Shippo | C | 61.9 | 581 | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns | no | https://www.anchorterminal.com/tools/shippo.md |\n| EasyPost | C | 57.4 | 790 | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns | no | https://www.anchorterminal.com/tools/easypost.md |\n| ShipStation API | D | 51 | 1038 | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns | no | https://www.anchorterminal.com/tools/shipstation.md |\n| ShippyPro | F | 37 | 1359 | shipping.rates, shipping.labels, shipping.tracking, shipping.address-validation, shipping.returns | no | https://www.anchorterminal.com/tools/shippypro.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- The MCP docs list 12 tools: get_shipping_rates, purchase_label, track_package, validate_address, create_order, list_orders, get_order, get_label, void_label, list_labels, get_account and list_carrier_accounts (source: \u003chttps://atoship.com/docs/mcp\u003e)\n- The docs say the assistant can only spend funds already in the wallet and cannot charge a card or take the balance negative (source: \u003chttps://atoship.com/docs/mcp\u003e)\n- Errors return an UPPER_SNAKE_CASE `error.code`, and a 429 carries `error.retryAfter` and the Retry-After header (source: \u003chttps://atoship.com/docs/api-reference/core/errors\u003e)\n- @atoship/mcp 1.0.2 on npm, MIT, last published 18 February 2026; its repository github.com/atoship-dev/atoship is not public (source: \u003chttps://registry.npmjs.org/@atoship/mcp\u003e)\n- The client libraries page says most SDKs are not published to their registries yet and only the Go SDK installs (source: \u003chttps://atoship.com/docs/client-libraries\u003e)\n- The terms of 20 August 2026 name atoship LLC, a California limited liability company (source: \u003chttps://atoship.com/terms\u003e)\n\n- #9 of 12 in 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## Compare\n\n- [atoship vs EasyPost](https://www.anchorterminal.com/compare/atoship-vs-easypost.md): E 43 vs C 57.4\n- [atoship vs Easyship](https://www.anchorterminal.com/compare/atoship-vs-easyship.md): E 43 vs BB 70.6\n- [atoship vs Envia](https://www.anchorterminal.com/compare/atoship-vs-envia.md): E 43 vs F 36.5\n- [atoship vs Karrio](https://www.anchorterminal.com/compare/atoship-vs-karrio.md): E 43 vs D 46.4\n- [atoship vs Sendcloud](https://www.anchorterminal.com/compare/atoship-vs-sendcloud.md): E 43 vs B 64.5\n- [atoship vs ShipBob](https://www.anchorterminal.com/compare/atoship-vs-shipbob.md): E 43 vs C 61.3\n- [atoship vs Shippo](https://www.anchorterminal.com/compare/atoship-vs-shippo.md): E 43 vs C 61.9\n- [atoship vs ShippyPro](https://www.anchorterminal.com/compare/atoship-vs-shippypro.md): E 43 vs F 37\n- [atoship vs ShipStation API](https://www.anchorterminal.com/compare/atoship-vs-shipstation.md): E 43 vs D 51\n- [atoship vs Ship24](https://www.anchorterminal.com/compare/atoship-vs-ship24.md): E 43 vs D 52.4\n- [atoship vs TrackingMore](https://www.anchorterminal.com/compare/atoship-vs-trackingmore.md): E 43 vs E 41.8\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on atoship.com or one of its subdomains. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"atoship\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/atoship\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/atoship.svg\" alt=\"atoship on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![atoship on Anchor Terminal](https://www.anchorterminal.com/badges/atoship.svg)](https://www.anchorterminal.com/tools/atoship)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/atoship\"\u003eatoship on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say atoship is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/atoship-dark.png\n- Light: https://www.anchorterminal.com/assets/share/atoship-light.png\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": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Shipping \u0026 fulfilment",
        "url": "https://www.anchorterminal.com/categories/shipping"
      },
      {
        "name": "atoship",
        "url": ""
      }
    ],
    "description": "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.",
    "facts": [
      "rank #1247 of 1486",
      "OAuth or key auth",
      "0 desk reviews"
    ],
    "h1": "atoship",
    "image": "https://www.anchorterminal.com/assets/og/tools-atoship.png",
    "path": "/tools/atoship",
    "published": "2026-10-01",
    "section": "tools",
    "title": "atoship review (2026): pricing, alternatives and grade E",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/tools/atoship"
  },
  "tokens": {
    "markdown": 5750,
    "slim": 1430
  },
  "version": 1
}
