Ups
FreeNot checkedMCP server for UPS package tracking and shipping services using browser automation. Supports tracking packages, getting shipping rates, finding locations, and s
About
MCP server for UPS package tracking and shipping services using browser automation. Supports tracking packages, getting shipping rates, finding locations, and scheduling pickups.
README
MCP server for UPS package tracking and shipping services. Uses Playwright browser automation to interact with the UPS website.
Requirements
- Node.js 18 or higher
- Playwright (installed automatically as a dependency)
Installation
npm install -g @striderlabs/mcp-ups
After installing, install the Playwright browser:
npx playwright install chromium
Configuration for Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"ups": {
"command": "mcp-ups"
}
}
}
If using npx instead of a global install:
{
"mcpServers": {
"ups": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-ups"]
}
}
}
Tools
track_package
Track a UPS package by tracking number. Returns current status, location history, and estimated delivery date.
Parameters:
tracking_number(required): UPS tracking number (e.g.,1Z999AA10123456784)
Example:
{
"tracking_number": "1Z999AA10123456784"
}
Response:
{
"tracking_number": "1Z999AA10123456784",
"status": "In Transit",
"estimated_delivery": "Thursday, March 14, 2026",
"events": [
{
"date": "03/13/2026",
"time": "8:00 A.M.",
"location": "Louisville, KY, US",
"status": "In Transit",
"description": "Package transferred to destination facility"
}
]
}
get_rates
Get UPS shipping rates between two ZIP codes for a package of specified dimensions and weight.
Parameters:
from_zip(required): Origin ZIP codeto_zip(required): Destination ZIP codeweight_lbs(required): Package weight in poundslength_in(optional): Package length in incheswidth_in(optional): Package width in inchesheight_in(optional): Package height in inches
Example:
{
"from_zip": "90210",
"to_zip": "10001",
"weight_lbs": 5,
"length_in": 12,
"width_in": 8,
"height_in": 6
}
Response:
{
"from_zip": "90210",
"to_zip": "10001",
"weight_lbs": 5,
"rates": [
{
"service_name": "UPS Ground",
"price": "$12.34",
"delivery_time": "1-5 business days",
"guaranteed": false
},
{
"service_name": "UPS Next Day Air",
"price": "$45.67",
"delivery_time": "Next business day",
"guaranteed": true
}
]
}
find_locations
Find UPS Store locations, drop boxes, and access points near a given address or ZIP code.
Parameters:
address(required): Address, city, or ZIP code to search nearradius_miles(optional): Search radius in miles (default: 5)location_type(optional): Type of location —store,dropbox,access_point, orall(default:all)
Example:
{
"address": "90210",
"radius_miles": 3,
"location_type": "store"
}
Response:
{
"search_address": "90210",
"locations": [
{
"name": "The UPS Store",
"address": "123 Main St",
"city": "Beverly Hills",
"state": "CA",
"zip": "90210",
"phone": "(310) 555-1234",
"hours": "Mon-Fri 8am-7pm, Sat 9am-5pm",
"distance": "0.5 miles",
"type": "UPS Location"
}
]
}
schedule_pickup
Schedule a UPS package pickup at your address. Note: This requires a UPS account login, so the tool will provide step-by-step instructions if authentication is needed.
Parameters:
address(required): Pickup street addresscity(required): Citystate(required): State (2-letter code)zip(required): ZIP codepickup_date(required): Desired pickup date inYYYY-MM-DDformatnum_packages(optional): Number of packages (default: 1)total_weight_lbs(optional): Total weight in pounds (default: 5)
Example:
{
"address": "123 Main St",
"city": "San Francisco",
"state": "CA",
"zip": "94105",
"pickup_date": "2026-03-15",
"num_packages": 2,
"total_weight_lbs": 10
}
Response:
{
"success": false,
"pickup_date": "2026-03-15",
"address": "123 Main St, San Francisco, CA 94105",
"message": "Scheduling a pickup requires a UPS account login",
"instructions": "1. Visit https://www.ups.com/pickup/schedule\n2. Sign in to your UPS account\n..."
}
Notes
- This server uses Playwright browser automation to interact with the UPS website. It does not use the UPS API directly.
- Some features (e.g., scheduling pickups) require a UPS account. The server will provide instructions for completing those steps manually.
- UPS website structure may change over time, which could affect data extraction accuracy.
- The server keeps a shared browser instance to reduce overhead across tool calls.
License
MIT
Install Ups in Claude Desktop, Claude Code & Cursor
unyly install mcp-upsInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add mcp-ups -- npx -y @striderlabs/mcp-upsFAQ
Is Ups MCP free?
Yes, Ups MCP is free — one-click install via Unyly at no cost.
Does Ups need an API key?
No, Ups runs without API keys or environment variables.
Is Ups hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Ups in Claude Desktop, Claude Code or Cursor?
Open Ups on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Playwright
Browser automation, scraping, screenshots
by MicrosoftPuppeteer
Browser automation and web scraping.
by modelcontextprotocolopentabs-dev/opentabs
Plugin-based MCP server + Chrome extension that gives AI agents access to web applications through the user's authenticated browser session. 100+ plugins with a
by opentabs-devrobhunter/agentdeals
1,500+ developer infrastructure deals, free tiers, and startup programs across 54 categories. Search deals, compare vendors, plan stacks, and track pricing chan
by robhunterCompare Ups with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All browse MCPs
