PostAgent
by postagent.sh in Documents & files
Print & mail PDF/HTML/Markdown/text/DOCX/images to US addresses; pay per call in x402 USDC on Base.
https://api.postagent.sh/mcp
Last 30 days
- Uptime
- 100%
- Response time
- 160 ms typical, 160 ms slowest 5%
- Last check
- 50 min ago
- Next check
- in 5 h
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"postagent": {
"type": "http",
"url": "https://api.postagent.sh/mcp"
}
}
}14 tools
- check_postagent_updates
Fetches the live PostAgent agent manifest. Call this before using PostAgent in a new session, after reconnecting the MCP server, or when an installed PostAgent skill may be stale. If the installed skill is older than latestSkillVersion, read latestSkillUrl and follow those instru
- create_letter
Upload and normalize a FINISHED, ready-to-mail document to PDF. Choose this when the content is final and IDENTICAL for every recipient — including when you mail the same letter to many people (just quote/pay once per recipient with the same documentId). The exact bytes you give
- create_template
Upload a REUSABLE template containing `{{field}}` placeholders (e.g. `Dear {{name}},` or `Balance due: {{amount}}`). Choose this ONLY when the content must vary per recipient (mail merge) — recipient count is irrelevant, so a single personalized letter belongs here too. If the co
- create_mail_quote
Verifies the recipient and sender US addresses and locks a 15-minute USDC price for a documentId. Does not charge or mail anything. Returns a `paymentUrl` (a per-quote x402-payable URL); the preferred way to actually mail the letter is for the agent's wallet to perform an in-band
- create_card_checkout
Creates a Stripe-hosted Checkout page for a locked quote and returns a `checkoutUrl` plus a `statusUrl`. Use this as the LAST-RESORT payment rail, when the payer is a human paying by credit card (the agent cannot complete card entry itself). Hand the `checkoutUrl` to the user to
- pay_mail_with_shared_payment_token
Autonomous, no-browser FIAT payment for a locked quote using a Stripe Shared Payment Token (SPT / Machine Payments Protocol). Use this when the agent can mint an SPT on the buyer's behalf and wants to pay by card/wallet without a human in a browser (prefer x402 first if the agent
- prepare_mail_payment
Returns the x402 PAYMENT-REQUIRED challenge for a locked quote so an x402-capable wallet client can sign it. No payment is taken at this step. Probes the canonical per-quote pay URL (`/v1/quotes/:quoteId/pay`). The preferred way to actually pay is for the wallet to perform the st
- submit_paid_mail_job
Detached-signature fallback for x402 wallets that can emit a standalone PAYMENT-SIGNATURE header. THE PRIMARY/RECOMMENDED PATH is for the agent's wallet to pay the quote's `paymentUrl` in-band (e.g. `npx awal@latest x402 pay <paymentUrl>`); use this tool only if your wallet clien
- get_mail_job_status
Returns normalized status, carrier/tracking/proof data, and tracking events for a previously created job.
- create_postcard_art
Upload ONE side of a postcard (front or back) as single-page PDF, PNG, or JPEG artwork. The file is stored VERBATIM — no page-size normalization and no reserved address zone — so you are responsible for the correct trim size plus bleed: 4x6 cards need 4.25"x6.25" artwork, 6x9 nee
- create_postcard_quote
Verifies the recipient and sender addresses and locks a 15-minute USDC price for mailing a postcard built from two postcard_art documents (front + back, uploaded via create_postcard_art). Sizes: 4x6 (default), 6x9, 6x11 — postcards always print in full color. US recipients use th
- verify_address
Standalone paid address verification — no mail is sent. Checks whether an address is deliverable and returns the standardized form (US: CASS with ZIP+4; international: per-country matching). Costs a small flat USDC fee per call via x402 (a fraction of a cent vs. mailing). Two-st
- create_campaign_quote
Quote ONE bulk send to MANY recipients (up to 500): a single template or static document, fulfilled through PostAgent's campaign workflow. Price is an inclusive customer-facing total, locked for 15 minutes. Payment is x402 ONLY. IMPORTANT — KYC WALL: campaigns require the paying
- get_campaign_status
Returns a campaign's validation/sending progress: status (validating | sent | partial | failed), recipient counts (total / validated / failed), and a failures report URL when some recipients could not be validated. Polling this endpoint also advances the campaign (it releases the
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 50 min ago | Passed | 200 | 160 ms |