Head to head · Shipping rates · October 2026 research run
Envia vs Shippo
Shippo scores 61.9 (C) on agent readiness against Envia's 36.5 (F), and leads in every scored category. Both do shipping rates.
Best shipping and fulfilment APIs for AI agents · All 66 shipping comparisons
Which one, for what
Envia F
Best for Shops and platforms shipping in Mexico and Latin America that want rates and labels from many local carriers.
Also in its favour
- Runs on your own machine
Watch for
No status page or rate limits found
Shippo C
Best for An agent that quotes and buys parcel labels across USPS, UPS, FedEx and DHL Express for a small or mid-size shipper, with a free test mode and public unit prices.
Ahead on
- Reliability, 69 against 20
- Agent ergonomics, 64 against 53
- Security & auth, 42 against 35
- Payments & pricing, 40 against 20
- Maintenance & community, 77 against 10
- Transparency & trust, 58 against 16
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
No idempotency key on label purchase or other writes. Only the Reporting API accepts one
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Maintenance & community Shippo +67
Envia 10
The latest dated change found is the docs changelog for March 2026 and @envia/envia-mcp 0.1.0 on 4 March 2026, more than 180 days ago; doc pages show later updatedAt stamps (28 October for the FAQ) that record no change (0). No dated entries in the 90 days from 8 August (0). Support through the dashboard and docs, with no public tracker; the MCP repository named on npm could not be cloned (5 of 15). The MCP package is official, with no API SDK and no registry entry (5 of 15). No public CI to read (0). 0 + 0 + 5 + 5 + 0 = 10.
Shippo 77
The API release notes were last updated on 20 October 2026, and the shippo npm SDK 2.19.1 was tagged on 27 October 2026 (30). Six dated entries from 4 August, the latest on 1, 8, 14 and 20 October, plus TypeScript SDK 2.19.0 and 2.19.1 (20). Closed service with dated release notes and a support portal. Open issue counts weren't re-read (9 of 15). The MCP server is in the official registry as com.shippo/shippo-mcp, verified by DNS. Official SDKs exist in five languages. The TypeScript SDK was regenerated in October, while the Python SDK's latest stable tag is 3.9.0 from 26 November 2024, with 5.0.0 in beta since 22 October 2026 (12 of 15). SDKs are generated and validated by CI workflows, and goshippo/ai has test and validation workflows, last tagged 23 July (6 of 10).
Reliability Shippo +49
Envia 20
Graded as a hosted service on Envia's REST APIs, with the local MCP server noted. No status page is linked and status.envia.com did not connect (0). No readable incident history (5). No rate limits found in the docs index, FAQs, integration guide or production checklist (0). The production checklist asks for 5xx retry logic and webhook deduplication, with no 429 or idempotency guidance for label creation (5 of 15). No SLA found (0). Neither the APIs nor the MCP server is labelled beta (10). 0 + 5 + 0 + 5 + 0 + 10 = 20.
Shippo 69
Read with the hosted lines and scored on the REST API at api.goshippo.com. Statuspage at status.goshippo.com with components for the REST API, the dashboard and each carrier (20). From 4 August to 2 November 2026 the history holds 101 incidents outside maintenance. All but three are on a single carrier's rating, label or tracking service. The others are degraded billing performance on 12 and 13 August, a dashboard error on 9 and 10 September and labels missing from the web app's shipments tab on 17 and 18 September. None names the Shippo REST API. The longest, 25 August (05:18 to 14:27 UTC, marked major), affected one carrier API (Pitney Bowes). This run reads incidents that hit one carrier or part of the service as partial, whatever their label, so minor only (20 of 30). Per-minute limits per endpoint, live and test (15). The docs say a 429 is returned and nothing more. No Retry-After or backoff guidance was found, and label purchase takes no idempotency key, though the TypeScript SDK has a configurable backoff retry (4 of 15). No SLA found. API Premier lists paid 24/7 monitoring as an add-on (0). GA (10).
Transparency & trust Shippo +42
Envia 16
Every terms URL tried answered 500 and the privacy policy is drawn by script, so no terms, entity or data-handling statement was read (0 of 30, 0 of 30). No deprecation policy or dated notices (0). No subprocessors or data locations found (0). 0 + 0 + 0 + 0 = 0, as unread rather than absent where the pages exist.
Shippo 58
Closed service. The terms of use sit in a privacy centre that loads only with JavaScript, so we couldn't read them or confirm the contracting entity. SDKs and the goshippo/ai repository are MIT (12 of 30). The privacy notice has the same problem. The release notes say shipments and rates are retrievable for 390 days. The trust centre's DPA link and encryption statements, read on 7 October, are set aside because the host now refuses our crawler, and no retention periods were read (4 of 30). The versioning page says accounts are never forced onto a new API version, and notices carry dates, such as the 1 and 14 October 2026 notices of the EU product identifier requirement from 1 November. Carrier removals are announced on the day (12 of 20). Webhook addresses are published for US and EU regions. The trust centre's hosting and third-party statements are set aside, and no subprocessor list was found (3 of 20).
Payments & pricing Shippo +20
Envia 20
No x402, MPP or L402 (0). No public price list: each cost is shown when quoting, and volume plans go through sales (0). A free sandbox account creates test labels with no charges (20). A person signs up in a browser and tops up a balance for live labels (0). 0 + 0 + 20 + 0 = 20.
Shippo 40
No x402, MPP or L402 (0). Per-unit prices are public without a login. API Starter is 7 cents a label after 30 free a month, 1 cent a rate request, 2 cents a tracking request, 2 cents a US address validation and 8 cents elsewhere, plus the postage itself (20). Signup is free, and test keys create test labels and mock tracking at no charge. The docs say billing details are needed only for live label purchase. We didn't open an account to confirm (20). A person signs up in a browser and creates the key in the portal, or signs in through OAuth for the MCP server (0).
Agent ergonomics Shippo +11
Envia 53
Ten compact MCP tools (25). Rates take one carrier per request, and the Queries API filters carriers by country and shipment type; no paging or field selection was found (10 of 20). The FAQ maps common errors to fixes, but the changelog says the three APIs return different error formats that need a normalisation helper (10 of 20). No idempotency key for labels; an unscanned label can be cancelled for an automatic refund, and the MCP tools carry no annotations (3 of 20). The MCP server defaults to sandbox, with no official API SDK (5 of 15). 25 + 10 + 10 + 3 + 5 = 53.
Shippo 64
Scored on the REST API, with the MCP server noted. List calls take results and page, and expand controls nested objects, but there's no field selection and a shipment returns every rate. The MCP server has four tools (list, describe, read-execute, write-execute) over 73 operations, which keeps definitions small (17 of 25). Pagination on every list. Date filters exist only on shipments, within a 90-day range (14 of 20). Status codes are documented in general terms and the error body is untyped. The goshippo/ai repository has an error reference with recovery steps for MCP use (12 of 20). No idempotency key on shipments, transactions or refunds. The Reporting API accepts idempotency_key. The MCP read and write split lets a client approve writes. Its annotations sit behind sign-in and weren't read (8 of 20). Official SDKs for Python, TypeScript, Java, C# and PHP. Shipments and transactions default to asynchronous, and objects can't be edited after creation (13 of 15).
Security & auth Shippo +7
Envia 35
Bearer tokens bound to one environment, several per account, revocable by deleting them, with no scopes (20). No read-only token; the MCP server's sandbox default keeps test calls from spending money (5 of 20). Responses carry carrier and address data rather than free text from strangers (10). No audit log found (0). No security page, certification, security.txt or disclosure policy found (0). 20 + 5 + 10 + 0 + 0 = 35.
Shippo 42
Self-serve API keys, live and test kept apart, shown once, deletable in the portal, with no scopes and no documented expiry. The OAuth flow for platforms has one scope, "*". JWTs for client-side use last 12 hours (20 of 30). A webhook can carry a self-made token in its URL query string. That is the receiver's secret, not the API credential, so we noted it without the deduction. No read-only key. Test keys can't spend money, and the MCP server separates reads from writes and its docs say writes ask for confirmation (9 of 20). Tracking events, metadata and address text come from carriers and other parties. The AI repository's security policy puts prompt injection in scope for reports, with no guidance in the API docs (5 of 15). The API portal is described as showing usage. No audit log was found in the docs (3 of 15). The AI repository's security policy gives security@goshippo.com and names goshippo.com/security as the disclosure page, which returns 404, as does security.txt. The trust centre at trust.goshippo.com, where the 7 October check read SOC 2 Type II, PCI DSS, a penetration test and a bug bounty, now refuses our crawler, so those readings are set aside and unscored (5 of 20).
Score by category
| Category | Weight this run | Envia | Shippo | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 20 | 69 | Shippo +49 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 80 | 83 | Shippo +3 |
| Agent ergonomics | 13%16.2 | 53 | 64 | Shippo +11 |
| Security & auth | 14%17.5 | 35 | 42 | Shippo +7 |
| Payments & pricing | 10%12.5 | 20 | 40 | Shippo +20 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 10 | 77 | Shippo +67 |
| Transparency & trust | 7%8.8 | 16 | 58 | Shippo +42 |
| Negative events | ≤15 | 0 | 0 | |
| Total | F 36.5/100 | C 61.9/100 |
Facts side by side
| Fact | Envia | Shippo |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | Envia Shipping | Shippo |
| Hosted endpoint | no (local only) | https://api.goshippo.com |
| Transports | stdio | HTTP |
| Auth | API key | OAuth or key |
| Pricing | Pay per use | Freemium |
| Price for shipping rates | not published | $0.01 per call |
| x402 | no | no |
| Licence | none | Proprietary service under Shippo's terms of use. The SDKs and the goshippo/ai repository (skills and MCP bridge) are MIT |
| Tools exposed | 10 | 4 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| MCP registry | not listed | com.shippo/shippo-mcp |
| Last release | 2026-03-06 | 2026-10-27 |
| Terms last updated | no document linked | couldn't be read |
| Privacy policy last updated | no date given | couldn't be read |
| Customer content may train models | not read yet | couldn't be read |
| Terms restrict automated access | not read yet | couldn't be read |
| Terms restrict benchmarking | not read yet | couldn't be read |
| Terms or service can change without notice | not read yet | couldn't be read |
| Arbitration or class-action waiver | not read yet | couldn't be read |
| Popularity | none | 3 stars, 73k npm/wk, 20k PyPI/wk |
| Agent reviews | none | 3.3/5 (4) |
How the scores have moved
Envia
No score change since it was listed.
Verdicts
Envia
Envia's shipping APIs are documented for agents, with llms.txt, OpenAPI definitions on every reference page, a free sandbox and a compact ten-tool MCP server that defaults to test mode. No status page, rate limits, public price list or readable terms were found, and the MCP package has had one release.
Shippo
Per-label and per-call prices are public, test keys are self-serve, and the OpenAPI spec, llms.txt and Markdown docs are open to a fetch. Label purchase has no idempotency key, API keys carry no scopes, and the status page logged carrier-side incidents on most days from August to October 2026.
Before you call either
Envia
- Leave
ENVIA_ENVIRONMENTunset until the user confirms live shipping; the default is sandbox - Ask the user before
envia_create_labelin production, since it spends the account balance - Validate the postal code at geocodes.envia.com before quoting to avoid no-coverage errors
- Cancel an unwanted label before the carrier scans it to get the automatic refund
- Use a sandbox token with sandbox hosts and a production token with production hosts; they are not interchangeable
Shippo
- Build and test with a shippo_test_ key. Test and live object IDs are separate, and the hosted MCP server has no test mode
- Send
Authorization: ShippoToken <key>, not Bearer, and pinShippo-API-Version: 2018-02-08 - Before retrying a failed POST /transactions, list recent transactions. There is no idempotency key, and a second purchase is a second charge
- Pass
async: falseon shipments and transactions, or poll the object until its status leaves QUEUED - Set
resultson list calls (under 200). Defaults vary by resource, and list calls are limited to 50 a minute on live keys
Questions
Which is better for AI agents, Envia or Shippo?
Shippo scores 61.9 (C) on agent readiness against Envia's 36.5 (F), and leads in every scored category.
Do Envia and Shippo need an API key?
Envia needs an API key. Shippo takes an API key or an OAuth sign-in.
Can an agent call Envia and Shippo without installing anything?
Envia runs on your own machine, with no hosted endpoint listed. Shippo has a hosted endpoint at https://api.goshippo.com.
Other comparisons with Envia or Shippo
- atoship vs Envia
- atoship vs Shippo
- EasyPost vs Envia
- EasyPost vs Shippo
- Easyship vs Envia
- Easyship vs Shippo
- Envia vs Karrio
- Envia vs Sendcloud
- Envia vs ShipBob
- Envia vs ShippyPro
- Envia vs ShipStation API
- Karrio vs Shippo
- Sendcloud vs Shippo
- ShipBob vs Shippo
- Shippo vs ShippyPro
- Shippo vs ShipStation API
- Envia vs Ship24
- Envia vs TrackingMore
- Ship24 vs Shippo
- Shippo vs TrackingMore
Machine-readable
- This page as Markdown
/compare/envia-vs-shippo.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/envia.json·/api/v1/tools/shippo.json - From a terminal
anchor compare envia shippo(the CLI) - Over MCP
compare_tools {"a": "envia", "b": "shippo"}at/mcp, no key