Overview
The Shippo MCP (Model Context Protocol) Server lets AI assistants and LLMs interact with the Shippo API in natural language: compare carrier rates, buy shipping labels, track packages, validate addresses, handle customs for international shipments, and process batches. There are two ways to connect:- Hosted server (recommended): connect your MCP client to Shippo’s remote server at
https://mcp.shippo.comand authorize with your Shippo account. Nothing to install, no API key to manage. - Local server (npm package): run the
@shippo/shippo-mcppackage on your own machine and authenticate with a Shippo API key. Good for local development, self-hosting, or clients that connect to a local stdio server.
What is MCP?
Model Context Protocol (MCP) is an open protocol, developed by Anthropic, that standardizes how AI applications connect to external tools and data. The Shippo MCP Server implements it, making Shippo’s shipping capabilities available to MCP-compatible clients such as Claude, ChatGPT, and Cursor.Features
The Shippo MCP Server provides access to core Shippo API functionality:Address Management
Address Management
- Validate addresses: verify and standardize shipping addresses
- Create address records: store addresses for future use
- Address book: manage sender and recipient addresses
Shipping Operations
Shipping Operations
- Create shipments: set up shipments with origin, destination, and parcel details
- Get rates: compare shipping rates across multiple carriers
- Generate labels: purchase shipping labels for your shipments
- Track packages: monitor shipment status and location
Carrier Accounts
Carrier Accounts
- List carrier accounts: view all connected carrier accounts
- Manage carriers: add or update carrier account settings
- Multi-carrier support: works with USPS, UPS, FedEx, DHL, and more
International Shipping
International Shipping
- Customs declarations: create customs documentation for international shipments
- Customs items: define items for customs processing
- Multi-country support: ship internationally with proper documentation
Advanced Features
Advanced Features
- Batch operations: process multiple shipments at once
- Pickups: schedule carrier pickups
- Manifests: generate end-of-day manifests
- Webhooks: set up event notifications
Hosted server (recommended)
Connect any MCP-compatible client tohttps://mcp.shippo.com. The first time you use it, your client opens a Shippo sign-in window. Authorize it once and you are connected.
| Setting | Value |
|---|---|
| Server URL | https://mcp.shippo.com |
| Transport | Remote MCP over streamable HTTPS |
| Authentication | Sign in to Shippo (OAuth) |
Cursor
VS Code
LM Studio
Goose
Claude (claude.ai and Claude Desktop)
- Open Customize and go to Connectors.
- Click +, then Add custom connector.
- Name it
Shippoand paste the server URLhttps://mcp.shippo.com. Leave the advanced OAuth fields blank. - Click Add, then complete the Shippo sign-in when prompted.
Claude Code
/mcp, select the Shippo server, and complete the browser sign-in to authorize.
ChatGPT
- In Settings, open Apps & Connectors and, under Advanced settings, enable Developer mode (available on plans that support custom connectors).
- Choose Create, name it
Shippo, and paste the connector URLhttps://mcp.shippo.com. - Create the connector; ChatGPT opens the Shippo authorization window. Complete the sign-in.
Cursor
Add a remote MCP server in.cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
Other MCP clients
Any client that supports a remote MCP server over HTTP with OAuth can connect: use the URLhttps://mcp.shippo.com and complete the Shippo authorization when prompted.
Local server (npm package)
Prefer to run the server yourself? The@shippo/shippo-mcp package runs locally over stdio and authenticates with a Shippo API key.
Prerequisites
- Node.js v18+
- A Shippo account (sign up here, it’s free) and your Shippo API token
- An MCP-compatible client that connects to a local server (Cursor, Claude Desktop, Claude Code, and others)
Get your API key
- Sign up or log in at goshippo.com
- Navigate to API Settings
- Generate a new API key
Cursor
The easiest way to install is the one-click installer:YOUR_SHIPPO_API_KEY with your actual key (keep the ShippoToken prefix), then save. Toggle the server off and on for changes to take effect.
Or add it manually in .cursor/mcp.json:
Claude Desktop
In Claude Desktop, go to Settings → Developer → Edit Config and add:YOUR_SHIPPO_API_KEY with your key (keeping the ShippoToken prefix), then save and restart Claude Desktop.
Claude Code
Command line
Run the server directly (useful for debugging):npx @shippo/shippo-mcp --help.
Updating
The local server is distributed via npm. Check your version withnpx @shippo/shippo-mcp --version, and update with:
Usage examples
Once connected, you can interact with Shippo through natural language:Create a shipping label
Track a package
Validate an address
Compare shipping rates
Test vs live mode
Shippo’s test mode gives you test labels and mock tracking with no charges, so you can build and experiment safely. Test mode is key-based, so it is available on the local server only.- Local server: the mode follows the API key you configure. Use a test key (
shippo_test_) for test mode, or a live key (shippo_live_) for production. - Hosted server: OAuth authorizes your live Shippo account, so the hosted server has no test mode. Read operations (rate comparison, address validation, tracking) do not incur charges, but purchasing a label is a live action that charges your account, write actions ask for confirmation first. To experiment without charges, use the local server with a test key.
- Test labels
- No charges to your account
- Safe experimentation
- Full API functionality
Security
Hosted server
Requests are sent to Shippo’s hosted MCP server over HTTPS, authenticated by your per-user Shippo authorization, and forwarded to the Shippo API on your behalf. There is no API key to store and no local process in the path. To disconnect, remove the Shippo connector from your client’s settings and revoke access from your Shippo account if desired.Local server (API key)
| Key Type | Prefix | Use Case |
|---|---|---|
| Test Keys | shippo_test_ | Development, testing, demos |
| Live Keys | shippo_live_ | Production only |
- Never commit API keys to source control
- Use test keys during development
- Rotate keys regularly
- Never share keys publicly
- Store keys in environment variables or a secure credential store
Troubleshooting
- Shippo doesn’t appear in the connector or tool picker: confirm the server was added and (hosted) the Shippo sign-in completed. Reopen your client’s connector settings to check its status.
- Hosted: you’re asked to sign in again: the authorization session expired. Re-authorize from the connector settings (in Claude Code, run
/mcp). - Hosted: the sign-in window is blocked: allow pop-ups for your client and retry.
- Local: authentication errors: verify the
ShippoTokenprefix is present on your key and that the key matches the mode you intend (test vs live). - Local: tools missing after an update: toggle the server off and on in your client so it picks up the new version.