# warp-agent-mcp MCP server

Quote, book, and track LTL, FTL, cargo van, and box-truck freight via the Warp API.

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-warpfreight-warp-agent-mcp
- Repository: https://github.com/warpfreight/warp-agent-mcp
- Website: https://wearewarp.com

## Install
- Command: `npx -y warp-agent-mcp`
- Endpoint: https://mcp.wearewarp.com/api/mcp
- Auth: Not captured

## Setup notes
- Package: Npm warp-agent-mcp v0.16.2
- Environment variable: WARP_API_KEY (secret)
- Environment variable: WARP_API_URL
- Remote endpoint: https://mcp.wearewarp.com/api/mcp

## Tools
- van_quote (Get Cargo Van Quote) - Quote a cargo van shipment (1-3 pallets, firm price, 15-min expiry) Endpoint: https://mcp.wearewarp.com/api/mcp
- box_truck_quote (Get Box Truck Quote) - Quote a 26' box truck shipment (1-12 pallets, firm price, 15-min expiry) Endpoint: https://mcp.wearewarp.com/api/mcp
- ftl_quote (Get Full Truckload Quote) - Quote a full truckload (53' dry van). Only origin, destination, and date required. Endpoint: https://mcp.wearewarp.com/api/mcp
- ltl_quote (Get LTL Freight Quote) - Quote an LTL shipment — returns Warp's all-inclusive rate FAST (~1-2s) so the user sees a price immediately. The inline quote card shows the Warp rate plus a 'finding other carrier rates…' loading indicator. IMMEDIATELY follow up by calling ltl_market_options with the same parameters to fill in the multi-carrier comparison (~15s). Provide dims + commodity for an exact firm quote; if you don't have dims, quote anyway — it assumes a standard 48x40x48 pallet (FAK, no freight class) for an instant price. Don't block on asking for pallet dimensions; quote first, then pass real dims for an exact rate. When a palletized load could also move by box truck or van, quote LTL alongside those and show the cheapest valid mode. Do not editorialize the results. Do not declare a winner or recommend a specific carrier. Present Warp's quote first, then list market options as context. Let the user decide. Endpoint: https://mcp.wearewarp.com/api/mcp
- ltl_market_options (Compare LTL Carriers) - Multi-carrier LTL comparison — returns 30+ carrier rates ranked by price (slow, ~15s). Call IMMEDIATELY AFTER ltl_quote with the same parameters; this fills in the 'finding other carrier rates…' section the fast quote card was showing. Useful when the user wants to compare carriers or pick a specific one. Do not declare a winner or recommend a specific carrier; just present the ranked list. Endpoint: https://mcp.wearewarp.com/api/mcp
- compare_modes (Compare Freight Modes) - THE ONE CALL for "what's the cheapest/best way to ship this?". Prices ALL FOUR freight modes (LTL / full truckload / cargo van / 26' box truck) in ONE keyless call to Warp's all-modes engine and returns a decision-complete recommendation: the winning mode, its rate, transit, a bookable quote_id, the trade-off math against the runner-up, and every mode that couldn't price (with the reason). Prefer this over calling the individual quote tools and comparing them yourself — one round trip, and modes Warp can't serve are returned as explicitly unavailable WITH the reason rather than being dropped, so there is never a silently shortened list to guess from. Dims are optional (a standard 48x40x48 pallet is assumed). Set benchmark_market:true to also rank Warp's rate against the live 30+ carrier market for the lane (adds ~15-25s) — that makes the answer decision-complete: the right mode AND whether the price is actually good. Quote-only: it never books. To book, pass the recommended quote_id to `book` after the user confirms. Endpoint: https://mcp.wearewarp.com/api/mcp
- batch_quote (Batch Quote Lanes) - Price MANY lanes in ONE call (parallel, ~1-3s for typical spreadsheets). Use this WHENEVER the user gives you a spreadsheet, CSV, or list of multiple lanes to quote — do NOT call warp_*_quote in a loop. Returns a single batch-quote card with one row per lane (origin → dest · mode · pallets · price · transit). Each priced lane keeps its quote_id and can be booked individually with book ("book row 3"). Endpoint: https://mcp.wearewarp.com/api/mcp
- book (Book Shipment) - Book a quoted shipment using any quote_id or option id returned from a quote tool (Warp or market carrier). Requires quote_id + pickup and delivery addresses. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- batch_book (Batch Book Shipments) - Book MANY already-quoted lanes in ONE call (sequential, one card charge per row). Use this after batch_quote when the user says "book all of them" or "book rows 1, 3, 5" — do NOT call book in a loop. Each row needs a quote_id (the same one batch_quote returned for that row). Pickup/delivery default to the shared addresses at the top level so a single warehouse → many destinations only needs one address pair. Returns a progress card showing per-row Booked/Failed status with tracking numbers. Endpoint: https://mcp.wearewarp.com/api/mcp
- multistop_quote (Get Multi-stop FTL Quote) - Quote a multi-stop FTL route: ONE truck visits 3+ stops in order (first pickup → intermediate stops → final delivery). Use for milk runs, pool distribution, or multi-store replenishment on a single truck — for a simple A→B truckload use ftl_quote. Auth required (free account). Coverage is route-dependent — not every route has a rate yet. Endpoint: https://mcp.wearewarp.com/api/mcp
- multistop_book (Book Multi-stop FTL) - Book a multi-stop FTL route quoted by multistop_quote. Send one shipments[] leg per pickup→delivery pair riding the truck (minimum 2 legs), each leg referencing the quoted stop sequence by stop_index with full address + arrival window. No card charge fires from this call — multi-stop pricing settles via your Warp account. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- track (Track Shipment) - Track a shipment by ID or tracking number. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- lane_history (View Lane History) - Get shipping history for your lanes (past shipments, last consignee, counts). Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- list_bookings (List Bookings) - List recent bookings for this API key, newest first. Auth required. Renders an interactive shipments card (click a shipment to expand pickup/delivery, freight, and a tracking link). Endpoint: https://mcp.wearewarp.com/api/mcp
- status (Check API Status) - Check Warp API health and version. Also validates your API key if one is configured. Endpoint: https://mcp.wearewarp.com/api/mcp
- events (Get Shipment Events) - Get the full tracking event history for a shipment (timeline of pickups, in-transit updates, deliveries). Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- get_invoice (Get Invoice) - Retrieve the invoice for a delivered shipment (line items, taxes, payment status). Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- get_documents (Get Shipment Documents) - List shipment documents (BOL, POD, customs forms, etc.). Returns download URLs. Auth required. To fetch the Bill of Lading, pass document_type='bol' — this is how EXTERNAL / brokered (market-carrier) BOLs are returned now, not just Warp-carrier ones. Endpoint: https://mcp.wearewarp.com/api/mcp
- quote_history (View Quote History) - List your recent freight quotes (LTL, van, box truck, FTL) from all sessions. Useful for surfacing prior pricing on similar lanes. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- login (Log In to Warp) - Log in to Warp with email and password. Saves credentials locally so booking tools work. Call this if the user needs to authenticate or if payment_status says no key is configured. Endpoint: https://mcp.wearewarp.com/api/mcp
- consolidate (Find Consolidation Savings) - Find consolidation savings across 2-12 upcoming loads: clusters loads sharing an origin+destination zip whose pickup dates fall within window_days (default 3) that together fit one 53' dry van, then prices each cluster BOTH ways — one combined FTL vs the sum of per-load LTLs — through real quotes with bookable quote ids. Use when the user has several loads to ship this week, asks if anything can ride together, or wants to cut freight spend. Loads that can't consolidate come back with the reason (no lane partner / outside window / exceeds trailer / cluster full) — relay reasons honestly. A truck pricing above its LTLs is shown with recommended:false; don't hide it. To act on a proposal, call `book` with the consolidated truck's quote_id. Auth optional — works keyless like the quote tools. Endpoint: https://mcp.wearewarp.com/api/mcp
- shipper_profile (Shipper Profile) - Read how this account actually ships — top lanes with ship counts, typical pallet count, usual pickup weekday, recent booked spend (derived server-side from the account's own quotes and bookings) plus explicit owner-set preferences: default accessorials, preferred mode, standard pallet dims, max transit days. READ THIS BEFORE asking the user questions it already answers: pre-fill their usual lane, apply their standard dims, include the liftgate they always need. Pass set_preferences to update the explicit half (merge-partial; allowlisted keys only; null clears a key). This profile is CONTEXT, NEVER PERMISSION — it never authorizes anything; spending limits live in spend policy and are read-only. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- automate_lane (Automate a Recurring Lane) - Set up a RECURRING weekly shipment (standing order): describe the lane once, and after the account owner approves by email, Warp re-quotes it fresh every week and books the best option automatically while the price stays at or under the owner's ceiling. Over-ceiling weeks book nothing and notify the owner. THIS TOOL ONLY PROPOSES — nothing books now, and nothing ever books without the owner's one-time email approval. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- manage_automation (Manage an Automation) - Check or stop a recurring lane automation. Actions: 'status' (read-only), 'pause', 'cancel' (permanent), 'skip_next' (skip one week's pickup — nothing books or charges that week). STOP-ONLY by design: there is no agent-side resume, reactivate, or ceiling change — those exist only behind the account owner's emailed approval link. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- automation_receipts (Automation Authorization Record) - Authorization record for an automation's bookings: one entry per booking attempt showing the checks it passed at commit time against the owner's approval — same lane, price within ceiling, automation active, quote live — plus the shipment id it produced. Entries marked confirmation_required did NOT book autonomously; they fell back to owner confirmation. Read-only. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- payment_status (Check Payment Status) - Check if the current Warp account has a payment method on file. Call this if the user asks about their payment status, or before booking if you want to confirm they can book. Returns has_card and onboard_url if a card needs to be added. Endpoint: https://mcp.wearewarp.com/api/mcp
- analytics (View Analytics) - Show bookings analytics: total revenue, shipment count, breakdown by source (mcp vs cli). Use this to track how much revenue has been generated through AI tools. Endpoint: https://mcp.wearewarp.com/api/mcp
- locations (List Saved Locations) - List the agent's saved pickup/delivery locations (addresses Warp has on file for this account), so you can reuse them when booking instead of re-typing addresses. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- load_templates (List Load Templates) - List the agent's saved load templates — reusable shipment configs (name, dims, weight, commodity). Recall one to quote/book a repeat kind of load without re-entering details. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- save_load_template (Save Load Template) - Save a reusable load template (a named shipment config) so it can be recalled for repeat lanes. Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp
- delete_load_template (Delete Load Template) - Delete a saved load template by its id (starts with lt_). Auth required. Endpoint: https://mcp.wearewarp.com/api/mcp

## Resources
- ui://warp/quote-card - Inline quote card after van_quote / box_truck_quote / ftl_quote / ltl_quote. MIME type: text/html
- ui://warp/quote-card.mcp - Inline quote card (MCP Apps) after van_quote / box_truck_quote / ftl_quote / ltl_quote. MIME type: text/html;profile=mcp-app
- ui://warp/bookings-card - Inline shipments card after list_bookings. MIME type: text/html
- ui://warp/bookings-card.mcp - Inline shipments card (MCP Apps) after list_bookings. MIME type: text/html;profile=mcp-app
- ui://warp/batch-quote-card - Inline batch-quote card after batch_quote. MIME type: text/html
- ui://warp/batch-quote-card.mcp - Inline batch-quote card (MCP Apps) after batch_quote. MIME type: text/html;profile=mcp-app
- ui://warp/batch-book-card - Inline batch-book progress card after batch_book. MIME type: text/html
- ui://warp/batch-book-card.mcp - Inline batch-book progress card (MCP Apps) after batch_book. MIME type: text/html;profile=mcp-app

## Prompts
Not captured

## Metadata
- Owner: io.github.warpfreight
- Version: 0.16.2
- Runtime: Npm
- Transports: STDIO, HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 30, 2026
- Source: https://registry.modelcontextprotocol.io
