colleag-mcp-ups
Provides tools for UPS shipping: rate shopping with negotiated account prices, live shipment tracking with scan history and estimated delivery dates, and landed-cost estimates (duties, VAT, brokerage) for international shipments.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@colleag-mcp-ups Get UPS rates from Stockholm to Berlin for a 3 kg package."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
colleag-mcp-ups
An MCP server for UPS shipping, running against your own UPS account: rate shopping with negotiated prices, live tracking (with an interactive MCP Apps card), and landed-cost estimates for international shipments.
Built by Colleag.ai, a CargoBeacon AB company. Works with any MCP host — Colleag.ai, Claude Desktop, VS Code, or your own client.
Read-only by design (v0.1). This release quotes, tracks and estimates — it never books shipments or spends money. Side-effecting tools (booking, pickup scheduling) will follow once host-side human-in-the-loop confirmation conventions are settled; a host, not a connector, should own the "are you sure?" step for actions that cost money.
Tools
Tool | What it does |
| Compare every available UPS service on a lane (or price one |
| Current status, delivery estimate and scan history for a tracking number. Ships an MCP Apps tracking card for hosts that support the |
| Duties, VAT and brokerage estimate for an international shipment (per-commodity lines, incoterm-aware) |
Related MCP server: Shipi MCP
Setup
Create an app on developer.ups.com ("I want to integrate UPS technology into my business") and enable the Rating, Tracking and Landed Cost products. This gives you a Client ID and Secret tied to your UPS account.
Configure environment variables:
UPS_CLIENT_ID=... # required
UPS_CLIENT_SECRET=... # required, secret
UPS_ACCOUNT_NUMBER=... # required — your 6-character shipper number
UPS_ENVIRONMENT=test # 'test' (CIE sandbox, default) or 'production'
SHIP_FROM_NAME="Acme AB" # optional defaults for the quoting origin
SHIP_FROM_ADDRESS="Industrigatan 1"
SHIP_FROM_CITY=Stockholm
SHIP_FROM_POSTAL_CODE="112 46"
SHIP_FROM_COUNTRY=SE
SHIP_FROM_PHONE="+468..."Run:
uv run colleag-mcp-ups # stdio (default)
MCP_TRANSPORT=streamable-http uv run colleag-mcp-ups # HTTPClaude Desktop
{
"mcpServers": {
"ups": {
"command": "uvx",
"args": ["colleag-mcp-ups"],
"env": {
"UPS_CLIENT_ID": "...",
"UPS_CLIENT_SECRET": "...",
"UPS_ACCOUNT_NUMBER": "...",
"UPS_ENVIRONMENT": "test"
}
}
}
}Try it without credentials
npx @modelcontextprotocol/inspector uv run colleag-mcp-ups lists the tools
and the ui://colleag-mcp-ups/tracking-card resource; calls will return a
structured configuration error until UPS credentials are set.
Notes
Access tokens are cached per
expires_in(UPS cut lifetimes to 1 h in April 2026 — never hardcode refresh intervals).Rate limits are not published by UPS; the server surfaces HTTP 429 as a structured
UPS_RATE_LIMITEDerror for the host to back off on.Tracking retention: UPS purges tracking data after ~120 days; keep your own shipment history if you need longer memory.
The MCP Apps tracking card is rendered by the host in a sandboxed iframe; hosts without the UI extension simply use the JSON tool result.
License
MIT — see LICENSE.
Available Tools
3 toolsget_ratesA
Get live UPS shipping quotes for a lane. Compares every available service with negotiated account prices and estimated delivery dates, or prices one specific service_code (07 Worldwide Express, 65 Saver, 08 Expedited, 11 Standard). Quote only — nothing is booked. Origin defaults to the configured ship-from address.
Inputs: to_city (required), to_name (required), weight_kg (required), to_country_code (required), +7 more. Returns: result
landed_costA
Estimate import duties, VAT and brokerage fees for an international shipment (what the receiver — or the shipper, under DDP — pays at import). One commodity line per product; an HS code improves accuracy. Not applicable to intra-EU shipments.
Inputs: commodities (required), import_country (required), currency, incoterm, +1 more. Returns: result
track_shipmentA
Track a UPS shipment by tracking number (e.g. 1Z...): current status, scheduled/actual delivery date, and recent scan events. Note: UPS retains tracking data for ~120 days.
Inputs: tracking_number (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool targets a completely distinct UPS workflow: tracking an existing shipment, getting carrier rates, and estimating import costs. There is no overlap or realistic chance of selecting the wrong tool for a task.
track_shipment and get_rates follow a clear verb_noun pattern in snake_case. landed_cost is still readable and consistent in style, but it breaks the imperative verb pattern, making it a minor deviation.
Three tools is a well-scoped count for this focused UPS visibility and cost-estimation server. Each tool covers a meaningful capability with no redundant entries.
The set covers the apparent purpose of tracking and cost estimation well: track an existing shipment, compare rates, and estimate landed cost. Shipping execution operations like creating or canceling a label are absent, but that seems outside the server's deliberate scope.
Maintenance
Related MCP Connectors
Compare rates, manage orders, buy labels, schedule pickups, and report on shipping.
EasyPost MCP — multi-carrier shipping rates + package tracking (easypost.com)
Live USPS, UPS, FedEx and DHL rates from the US: domestic, Canada, UK, Germany, Australia. No scale.
Track parcels + ocean containers across 549 total carriers via REST and four existing MCP tools.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to integrate with UPS shipping and logistics capabilities, including package tracking with delivery status and transit information, and address validation for U.S. and Puerto Rico locations.32MIT
- AlicenseAqualityDmaintenanceManage shipping workflows by creating labels, tracking packages, and scheduling carrier pickups. Compare live rates from major carriers like FedEx and UPS to optimize costs for every shipment. Organize logistical operations with a centralized address book and detailed shipping analytics.189 npm1MIT
- AlicenseAqualityDmaintenanceEnables AI agents to create shipments, track packages, get rates, validate addresses, schedule pickups, and find UPS locations via the UPS API.914 npm2MIT

Easyship MCPofficial
AlicenseNot gradedqualityDmaintenanceEnables AI agents to manage global shipping operations, including rate comparison, shipment creation, label purchasing, tracking, pickup scheduling, address validation, billing, and analytics, via natural language.25 npmMIT