# LATAM Logistics MCP > A remote MCP server that lets any AI agent ship parcels across Latin America — via Envia.com, one server for many countries. Compare carrier rates (envíos), buy shipping labels (guías), track parcels and cancel shipments across Mexico, Colombia, Chile, Brazil, Guatemala, Argentina plus US/CA/ES. Stateless, bring-your-own Envia token, never stores anything. - MCP endpoint (Streamable HTTP): https://logi-latam.wishpool.app/mcp - Credential header: x-envia-token (your Envia API token). Sandbox token = self-service and instant at https://ship-test.envia.com (no manual review); production token = your live Envia account at https://envia.com. Sandbox and production tokens are SEPARATE. Stateless: every call sends the token as the Authorization: Bearer header directly to Envia (production api.envia.com / sandbox api-test.envia.com), then stores nothing. - Environment header: x-envia-env = sandbox (DEFAULT — no real shipping, no charge) | production (real labels & real money). Defaults to sandbox so a mis-config never ships/charges. - Country selection: `country` = 2-letter ISO for a domestic shipment (sets origin + destination); OR origin_country + destination_country for cross-border. Supported (confirmed Envia currency): MX Mexico (MXN), CO Colombia (COP), CL Chile (CLP), BR Brazil (BRL), GT Guatemala (GTQ), AR Argentina (ARS), US United States (USD), CA Canada (CAD), ES Spain (EUR). Colombia quirk: the address city field must be the 8-digit DANE municipal code, not the city name. - Units: weight in KILOGRAMS (kg), dimensions in CENTIMETRES (cm), money in the shipment currency (defaults to the destination country currency). - Flow: quote_rates (origin + destination addresses + country + packages -> every carrier with price + delivery estimate, cheapest flagged) -> create_shipment (same route + carrier + service from a quote -> tracking_number + label_url PDF) -> query_tracking (by tracking number). cancel_shipment cancels a label before pickup. ## Tools - quote_rates: THE tool to call first (compare envíos). Required: packages (array of { weight kg, length/width/height cm, declaredValue?, amount? }) + an origin & destination address (name, street, city, state, postal_code, phone) + country (or origin_country + destination_country). Optional: currency, carrier (restrict to one). Returns every carrier service (carrier, service, total_price, currency, delivery_estimate), the cheapest, and serviceable=true/false. Read-only, spends nothing. - create_shipment: Buy a label (guía). Required: same origin/destination + country + packages as quote_rates, plus carrier + service chosen from a quote_rates option. Optional: currency, print_format (PDF|PNG|ZPL|ZPLII|EPL), reference. Returns carrier, service, shipment_id, tracking_number, tracking_url, label_url (PDF), total_price, currency. A production token charges your Envia balance; sandbox does not. - query_tracking: Track by tracking_number (single) or tracking_numbers (array). Unified status enum: CREATED | PICKED_UP | IN_TRANSIT | OUT_FOR_DELIVERY | DELIVERED | CANCELED | RETURNED | EXCEPTION | PENDING | UNKNOWN — each with a plain-English hint; non-terminal statuses include next_steps. Raw Envia passthrough (status history / events) always included. A tracking number not yet in Envia returns a readable "no shipments found" error. - cancel_shipment: Cancel a label + request a carrier refund. Required: carrier + tracking_number (from create_shipment). Only works while the parcel is unscanned and undelivered; refund timing depends on the carrier policy. - Owner policy guardrails: x-agentpay-max-amount (hard cap on the declared shipment value), x-agentpay-approval-above (returns an unsigned draft for human review — no label is bought), x-agentpay-allowed-tools (tool allow-list) — set by the human owner in the MCP client config; the agent cannot relax them. The declared shipment value is gated before a label is bought. ## Safety Stateless translation layer. The Envia token travels per-request in a header, is forwarded to Envia as the Authorization header, and is never stored; labels, orders and tracking are held by Envia and the carriers, never here. x-envia-env defaults to sandbox so a mis-config never ships a real parcel or spends money. Parcels flow sender <-> carrier <-> recipient directly. Privacy policy: https://logi-latam.wishpool.app/privacy ## Sister servers USA labels (USPS/UPS/FedEx via EasyPost): https://logi-us.wishpool.app/mcp . India labels (Delhivery/Bluedart/Ekart via Shiprocket): https://logi-in.wishpool.app/mcp . Indonesia couriers (JNE/J&T/SiCepat via Biteship): https://logi-id.wishpool.app/mcp . Taiwan CVS pickup + home delivery: https://logi-tw.wishpool.app/mcp . One family of stateless BYO local-commerce MCP servers: local payments in 81 countries (https://mcp.wishpool.app/llms.txt), plus electronic-invoice servers across many countries including Mexico CFDI, Brazil NF-e, Chile DTE, Colombia and Peru.