EasyPost MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.36.5Updated Nov 8, 2026

MCP server for EasyPost — rate shipments, buy & refund labels, track packages, verify addresses.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableProductivity & WorkflowBusiness & Commerce

Overview

AI-generated overview

Hosted EasyPost server that lets an assistant rate shipments, buy and refund shipping labels, track packages and verify addresses.

What you can do
  • List and retrieve shipments, including rates, tracking codes and purchased labels
  • List and retrieve package trackers with current status and tracking history
  • List and retrieve saved addresses, and verify US or international addresses for deliverability
  • Create a shipment to get rates from enabled carriers, and start tracking by carrier tracking code
  • Buy a label at a chosen rate and request a refund or void of a purchased label
  • Check monthly usage, request a missing feature, and upgrade or cancel the paid plan
When to use it
Useful when you want an assistant to look up shipping status, compare carrier rates, verify addresses, or buy and void labels through your EasyPost account without leaving the chat.
Requirements
Remote MCP endpoint connected by URL only; no local install. Sign-in is via OAuth, and the login page asks for your EasyPost API key, which is validated and stored per user. A free plan allows 50 tool calls per month; paid plans are available.
Before you install
Buying a label charges the EasyPost account balance and is irreversible except by a refund request, which the carrier may refuse. Creating shipments, trackers and address verifications changes account data, so confirm before write tools run. Your EasyPost API key is entered on the hosted login page and stored by the provider, and usage is metered against a paid plan.

Installation

In SourceWeft

  1. Open EasyPost MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Feasypost/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "easypost-by-usefulapi": {
      "type": "http",
      "url": "https://easypost.usefulapi.io/mcp"
    }
  }
}

README

EasyPost MCP by usefulapi

Rate shipments, buy labels, track packages and verify addresses via EasyPost, from Claude, Cursor, or any MCP client. Hosted, no local install — connect with your EasyPost API key.

Live endpoint: https://easypost.usefulapi.io/mcp · Homepage: https://usefulapi.io/easypost

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://easypost.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http easypost https://easypost.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "easypost": {      "url": "https://easypost.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your EasyPost credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/easypost/

On first connect you'll paste your EasyPost API key. It's validated, stored per-user, and scoped to you.

Tools

ToolTypeWhat it does
easypost_list_shipmentsreadList shipments
easypost_get_shipmentreadGet a shipment
easypost_list_trackersreadList trackers
easypost_get_trackerreadGet a tracker
easypost_list_addressesreadList addresses
easypost_get_addressreadGet an address
easypost_verify_addresswriteVerify an address
easypost_create_shipmentwriteCreate a shipment (get rates)
easypost_create_trackerwriteCreate a tracker
easypost_buy_shipmentwriteBuy a shipping label
easypost_refund_shipmentwriteRefund / void a label
easypost_usage_statusmetaUsage status (free-tier meter)
easypost_request_featuremetaRequest a missing feature
easypost_upgrademetaUpgrade to Pro or Pro+
easypost_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with easypost_upgrade (it returns a Stripe Checkout link). Cancel any time with easypost_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running easypost_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

Source: servers/easypost/README.md at commit 4046075

Tools

11

easypost_list_shipments

List shipments

List shipments on the account, most recent first, with pagination and optional filters. API: GET /shipments.

Parametersafter_idbefore_idpage_sizepurchasedend_datetimestart_datetime

easypost_get_shipment

Get a shipment

Retrieve a single shipment by id, including its available rates, tracking_code, and postage_label (if purchased). API: GET /shipments/{id}.

Parametersidrequired

easypost_list_trackers

List trackers

List package trackers, optionally filtered by tracking_code or carrier. API: GET /trackers.

Parameterscarrierpage_sizetracking_code

easypost_get_tracker

Get a tracker

Retrieve a single tracker by id, including current status and tracking_details history. API: GET /trackers/{id}.

Parametersidrequired

easypost_list_addresses

List addresses

List saved addresses on the account, with pagination. API: GET /addresses.

Parametersafter_idbefore_idpage_size

easypost_get_address

Get an address

Retrieve a single address by id, including verification details. API: GET /addresses/{id}.

Parametersidrequired

easypost_verify_address

Verify an address

Create and verify a US or international address, returning deliverability and normalized/corrected fields. No charge. API: POST /addresses (body { address, verify: ["delivery"] }).

Parametersziprequiredcitynameemailphonestatecompanycountrystreet1requiredstreet2

easypost_create_shipment

Create a shipment (get rates)

Create a shipment from a to_address, from_address, and parcel, returning the available RATES from all enabled carriers. This only RATES the shipment — it does NOT purchase a label and does NOT charge the account; buying is a separate step (easypost_buy_shipment). API: POST /shipments (body { shipment }).

Parametersparcelrequiredreferenceto_addressrequiredfrom_addressrequiredcarrier_accounts

easypost_create_tracker

Create a tracker

Start tracking a package by its carrier tracking code. Returns the tracker with current status. No charge. API: POST /trackers (body { tracker }).

Parameterscarriertracking_coderequired

easypost_buy_shipment

Buy a shipping label

PURCHASE a shipping label for a shipment at a chosen rate. WARNING: this CHARGES the EasyPost account balance and is irreversible except by requesting a refund (easypost_refund_shipment). Pick a rate_id from the rates returned by easypost_create_shipment or easypost_get_shipment. API: POST /shipments/{id}/buy (body { rate: { id }, insurance? }).

Parametersrate_idrequiredinsuranceshipment_idrequired

easypost_refund_shipment

Refund / void a label

Request a refund (void) of a purchased shipping label. WARNING: reverses a purchase; approval depends on the carrier and label age. API: POST /shipments/{id}/refund.

Parametersidrequired

Version history

22
  1. v1.36.5LatestNov 8, 2026
  2. v1.36.4Nov 7, 2026
  3. v1.35.3Nov 5, 2026
  4. v1.35.2Nov 5, 2026
  5. v1.35.1Nov 4, 2026
  6. v1.35.0Nov 3, 2026
  7. v1.34.1Nov 3, 2026
  8. v1.33.0Nov 1, 2026
  9. v1.31.0Oct 31, 2026
  10. v1.30.0Oct 31, 2026
  11. v1.29.2Oct 30, 2026
  12. v1.29.0Oct 30, 2026
  13. v1.24.0Oct 26, 2026
  14. v1.21.3Oct 25, 2026
  15. v1.21.0Oct 25, 2026
  16. v1.20.0Oct 24, 2026
  17. v1.17.0Oct 23, 2026
  18. v1.16.4Oct 22, 2026
  19. v1.16.3Oct 21, 2026
  20. v1.11.1Oct 9, 2026
  21. v1.10.0Oct 9, 2026
  22. v1.0.1Sep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations