Print and Mail Company vs Warp Agent MCP

A side-by-side look at the Print and Mail Company and Warp Agent MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Print and Mail Company logoPrint and Mail CompanyDelivery · Remote HTTP/SSEPrint and mail real letters worldwide from the EU, incl. registered mail. Quote, compose, send.57GoodAuth: not declaredWarp Agent MCP logoWarp Agent MCPDelivery · Local subprocess (stdio)Book real LTL/FTL/van/box-truck freight through the Warp network. 20 tools, in-chat login, Stripe-charged bookings, real carrier dispatch. Live demo at wearewarp.com/agents/mcp.65GreatAuth: api key required

Verdict: choose Print and Mail Company for delivery work over a hosted endpoint; choose Warp Agent MCP for delivery as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Print and Mail Company logoChoose Print and Mail Company when

  • You need dedicated capabilities in the Delivery domain.
  • You prefer a remote HTTP/SSE transport.
  • You want tools like get_price_quote, list_destinations, check_pdf_margins.
Explore Print and Mail Company

Warp Agent MCP logoChoose Warp Agent MCP when

  • You need dedicated capabilities in the Delivery domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: WARP_API_KEY, WARP_API_URL.
  • You want tools like freight_workflow, compare_freight_costs, van_quote.
Explore Warp Agent MCP

Feature & specification comparison

Rows where the two servers differ are marked.

SpecPrint and Mail Company logoPrint and Mail CompanyWarp Agent MCP logoWarp Agent MCP
CategoryDeliveryDelivery
Quality signal57/100 · Good65/100 · Great
Install commandConfirmedConfirmed
TransportRemote HTTP/SSELocal subprocess (stdio)
AuthNot declaredAPI key required
PricingNot declaredPaid service
Required env varsNone listedWARP_API_KEYWARP_API_URL
Verified ownerCommunity listingCommunity listing
GitHub stars05
Directory activity 1 views 0 installs 0 upvotes 3 views 0 installs 0 upvotes
Tools1433

Tools & capabilities

Print and Mail Company tools 14

  • get_price_quoteUse this when the user asks what it costs to send a physical letter by post (snail mail), including a registered letter. Returns the exact total incl. Luxembourg VAT (for a signed-in EU business customer with a confirmed VAT number: excl. VAT under the reverse charge), the line items, the envelope, the postal size class and zone and the typical delivery time for a page count, destination country and print options. Letters are printed and posted in Luxembourg, France, Belgium or Germany, so the sender can be anywhere in the world. Note: registered mail is international registered mail with tracking and signature on delivery; "certified" letters, Einschreiben, lettre recommandée and carta certificada mean this here (not a US certified-mail product). Works without sign-in. Set currency to get the total in USD, GBP or CHF (ECB rate plus currency margin). Does not cover email, fax, parcels or postcards.
  • list_destinationsUse this when the user asks whether a letter can be posted to a country, or which countries can be reached. Without country: all destination countries with their postage zone. With country: that country's zone, the price of a 1-page standard and registered letter, and the typical delivery time. Works without sign-in. Letters only, no parcels.
  • check_pdf_marginsUse this when the user has a PDF they want printed and posted and it should be checked first: verifies the page size (A4 or US Letter) and the required free margin on every side, and lists the pages that need changes. We print on the paper size uploaded (printed_on): A4 on A4, US Letter on US Letter (for a recipient outside the US, Canada and US territories the user may choose A4 instead when sending); a PDF mixing A4 and US Letter pages is printed on A4, its Letter pages centred at 100 % or scaled down slightly when content comes close to the edge (us_letter_note, pages[].scale_percent). Decide by compliant: all_pages_a4 is false for a US Letter PDF, which is printable. Accepts a public https URL or base64. The file is not stored and nothing is sent. Works without sign-in. To fix a failing PDF, upload it with upload_document and use fix_document_margins.
  • compose_letterUse this when the user wants to write a new paper letter from text and post it, for example to cancel a contract, subscription or membership by letter, file a complaint or objection, or send a formal notice, by ordinary or registered mail. Renders an A4 letter (DIN 5008 layout: sender block with the user's own name and address, recipient, place and date, subject, body, closing, signature) that passes the print check, and creates a draft with the exact price. Nothing is sent or charged: show the user the draft and the total, ask for confirmation, then call send_letter. The sender can live in any country. Body supports paragraphs (blank line), '- ' bullets, '1. ' lists and **bold**. Needs the user's account.
  • upload_documentUse this when the user already has a PDF (public https URL or base64) that should be printed and posted. Stores the file in the user's account, runs the print check (A4 or US Letter, free margins; printed_on says the paper: US Letter PDFs are printed on US Letter, a PDF mixing A4 and US Letter pages on A4, see us_letter_note; decide by compliant, as all_pages_a4 is false for a US Letter PDF) and returns document_id for create_letter. If the check fails, call fix_document_margins or ask the user for a corrected file. For a file on the user's own device, use create_upload_link instead. Sends nothing. Needs the user's account.
  • fix_document_marginsUse this when an uploaded PDF fails the print check because content is too close to the edge or pages are neither A4 nor US Letter. mode "shrink" (default) scales the affected pages down slightly and centres them on their paper (US Letter for a US Letter PDF, else A4); nothing is lost. mode "crop" keeps pages at 100 % and removes everything inside the margin band, so that content is NOT printed (pages of other sizes are first fitted onto A4). The US Letter pages of a mixed PDF that already fit on A4 keep their placement. The original upload is kept; calling again with the other mode replaces the earlier fix. If content touches the edge, ask the user which mode they prefer and tell them what changed. Not possible once the letter is paid. Needs the user's account.
  • create_upload_linkUse this when the user wants to post a PDF that is on their own device and cannot be passed as a URL or base64. Creates a private upload page (valid 60 minutes); give the URL to the user, and once they have uploaded, pass upload_id to create_letter. Sends nothing. Needs the user's account.
  • create_letterUse this when the user has an uploaded PDF (document_id, or upload_id from create_upload_link) and a recipient address and wants it posted by ordinary or registered mail; registered mail is international registered mail with tracking and signature on delivery; "certified" letters, Einschreiben, lettre recommandée and carta certificada mean this here (not a US certified-mail product). Creates a draft with the exact total in the user's currency. Nothing is sent or charged; call send_letter only after the user confirms. Every envelope carries our company return address, so the user's own address belongs in the document. A US Letter PDF to a recipient outside the US, Canada and US territories needs the user's paper choice (paper_size, same price): without it the draft says paper_choice_required. Needs the user's account.
  • send_letterUse this when the user has explicitly confirmed a specific draft letter (recipient, content and total price) and wants it printed and posted. Pays the letter from the user's prepaid credit and releases it to print; it can be cancelled with cancel_letter only until production starts. Only call this after that confirmation and after the user agreed to the Terms (https://printandmailcompany.com/en/legal/terms) and to printing starting immediately (which ends the consumer right of withdrawal once printed). If credit is too low, the result contains a payment link for the user; the assistant cannot pay. A US Letter PDF to a recipient outside the US, Canada and US territories needs paper_size (ask the user: shrink to A4, recommended, or keep US Letter; same price); without it the call fails with PAPER_CHOICE_REQUIRED and nothing is charged. Posts paper letters only: no email, fax or parcels. Needs the user's account.
  • get_letterUse this when the user asks about a letter they created here: status (draft, paid, in_production, printed, posted, cancelled, returned), tracking number for registered mail, and price. Look up by letter_id or reference (PM-XXXXXX). Changes nothing. Needs the user's account.
  • list_lettersUse this when the user wants to see their recent letters, optionally filtered by status. Returns status, recipient, price and tracking number per letter. Changes nothing. Needs the user's account.
  • cancel_letterUse this when the user wants to stop a letter they created here: cancels a draft, or a paid letter that has not gone into production yet, and returns the amount to the user's credit. Letters already printed or posted cannot be recalled. This cancels our letter, not a contract the user has with someone else (for that, compose_letter writes the cancellation letter). Ask the user before cancelling. Needs the user's account.
  • +2 more on the listing page

Warp Agent MCP tools 33

  • freight_workflowGet a ready-to-use shipment intake CSV header, results CSV header, and starter prompt for shipment quoting, weekly freight comparison, or invoice review. Guidance only: does not read files, fetch rates, schedule work, or book. Use this when an operator asks how to start or supplies invoices/a shipment sheet.
  • compare_freight_costsCalculate USD cost differences for up to 50 distinct shipments using supplied invoice/quote amounts and explicit comparability evidence. Excludes mismatched or unknown terms, keeps losses, separates quoted opportunities from invoice differences. Does not fetch rates, verify documents, annualize savings, or book. One candidate per shipment per call.
  • van_quoteQuote a cargo van shipment (1-3 pallets, firm price)
  • box_truck_quoteQuote a 26' box truck shipment (1-12 pallets, firm price)
  • ftl_quoteQuote a full truckload (53' dry van). Only origin, destination, and date required.
  • ltl_quoteQuote 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.
  • ltl_market_optionsMulti-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.
  • compare_modesTHE 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.
  • batch_quotePrice up to 50 lanes in one call for a specified mode per row (defaults to LTL). This returns a Warp rate per row, NOT all-mode or all-carrier comparison. For Compare All use compare_modes per shipment; for LTL carrier alternatives use ltl_market_options. Never imply this tool compared every carrier. 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").
  • bookBook 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.
  • batch_bookBook 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.
  • multistop_quoteQuote 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.
  • +21 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Print and Mail Company

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "print-and-mail-company": {
      "url": "https://printandmailcompany.com/mcp"
    }
  }
}

Warp Agent MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "warpfreight-warp-agent-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "warp-agent-mcp"
      ],
      "env": {
        "WARP_API_KEY": "YOUR_WARP_API_KEY_HERE",
        "WARP_API_URL": "YOUR_WARP_API_URL_HERE"
      }
    }
  }
}

Frequently asked questions

Print and Mail Company is categorized under Delivery and uses a remote HTTP/SSE transport. Warp Agent MCP belongs to Delivery and uses a local stdio subprocess. Pick Print and Mail Company for delivery work and Warp Agent MCP for delivery.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Print and Mail Company has no declared pricing — check the project's own site. Warp Agent MCP is listed as a paid service. Auth: api key required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add print-and-mail-company and warpfreight-warp-agent-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Print and Mail Company has a quality signal of 57/100 (Good) with 1 views, 0 installs and 0 GitHub stars. Warp Agent MCP has 65/100 (Great) with 3 views, 0 installs and 5 GitHub stars.