FedEx, UPS and DHL each have their own API and their own credentials; here they sit behind one ShipBoss token, which is what turns "what would this cost" into a single call rather than three integrations. Labels come back as a direct download URL instead of encoded bytes you have to reassemble. Two setup notes in the order they matter: the token comes from the API Integrations page in the ShipBoss admin rather than from your login, and the configuration points at a virtual environment's Python by full path — so create the environment before you write the config.
An MCP server over the ShipBoss shipping platform, which sits in front of FedEx, UPS and DHL on one account. The tools cover the parcel lifecycle — rates, labels, tracking, pickup scheduling — plus freight quoting and freight tracking.
- get_parcel_rates returns shipping rates for a parcel between two addresses
- create_parcel_label creates the label and answers with a direct download URL
- track_parcel follows a shipment once it is moving
- create_pickup schedules a carrier collection, and cancel_pickup calls one off
- get_freight_rates quotes freight shipments, and track_freight follows them
- ping is a health check, useful for confirming the server and the token work before anything else is attempted
Python 3.9+ and a ShipBoss account. The publisher requires a virtual environment: create one, activate it, then pip install shipboss-mcp-server, and point your client's command at that environment's Python interpreter and at shipboss_mcp_server.py by full path. The API token comes from ShipBoss Admin → API Integrations and can be supplied three ways: SHIPBOSS_API_TOKEN in a .env file next to the server file, --api-token on the command line, or SHIPBOSS_API_TOKEN in the client config's env block.
One command plus a key — pip install shipboss-mcp-server, then supply credentials
