Tools / Package Tracker
Package Tracker icon

Package Tracker

Track parcels across 345+ carriers

Track packages across 345+ carriers worldwide including UPS, FedEx, DHL, USPS, Royal Mail, and Australia Post. Register tracking numbers, view delivery event histories with timestamps, check estimated delivery dates, and manage tracked shipments. Auto-detects carriers from the tracking number.

6 skillsv0.01
Track Package

Register a tracking number and immediately get its current delivery status, event history, and estimated delivery. Automatically detects the carrier from the tracking number format. This is the primary entry point for tracking any package.

Returns: Current delivery status with event history, shipping origin/destination, and estimated delivery date
Parameters
tracking_number *stringThe package tracking number (e.g. 1Z999AA10123456784 for UPS, 9400111899223456789012 for USPS)
carriernumberOptional numeric carrier code. Usually not needed — auto-detection handles most tracking numbers.
Example
Track a UPS package
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "package-tracker",
  "skill": "track_package",
  "input": {
    "tracking_number": "1Z999AA10123456784"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Tracking Details

Get detailed tracking information for an already-registered tracking number. Returns the full event history with timestamps, locations, and carrier-level breakdowns. Use this for deeper inspection of a tracked package.

Returns: Detailed tracking data with carrier-level event breakdown, shipping info, and time metrics
Parameters
tracking_number *stringThe package tracking number to look up
carriernumberOptional numeric carrier code
Example
Get detailed tracking for a FedEx package
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "package-tracker",
  "skill": "tracking_details",
  "input": {
    "tracking_number": "794644790138"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
List Packages

List all tracked packages with optional filters by status, date range, or tracking number search. Returns paginated results showing the latest event for each package.

Returns: Paginated list of tracked packages with status and latest event for each
Parameters
tracking_numberstringFilter by tracking number (comma-separated for multiple)
package_statusstringFilter by package status (e.g. NotFound, InTransit, Delivered)
tracking_statusstringFilter by tracking status
register_date_fromstringFilter by registration date (from), format YYYY-MM-DD
register_date_tostringFilter by registration date (to), format YYYY-MM-DD
pagenumberPage number for pagination (default 1)
Example
List all tracked packages
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "package-tracker",
  "skill": "list_packages",
  "input": {}
}' \
  https://api.toolrouter.com/v1/tools/call
Stop Tracking

Stop tracking a package or permanently delete it from monitoring. Stopped packages can be resumed once. Deleted packages are permanently removed.

Returns: Confirmation that tracking was stopped or deleted
Parameters
tracking_number *stringThe tracking number to stop monitoring
carriernumberOptional numeric carrier code
permanentbooleanIf true, permanently delete the tracking (cannot be undone). Default false (just stops tracking).
Example
Stop tracking a package
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "package-tracker",
  "skill": "stop_tracking",
  "input": {
    "tracking_number": "1Z999AA10123456784"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Check Quota

Check remaining tracking quota including total capacity, usage, and daily limits. Useful for monitoring how many more packages can be registered for tracking.

Returns: Quota breakdown with total, used, remaining, daily usage, and percentage used
Example
How many tracking slots do I have left?
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "package-tracker",
  "skill": "check_quota",
  "input": {}
}' \
  https://api.toolrouter.com/v1/tools/call
Real-time Track

Force a real-time query directly to the carrier for the absolute latest tracking status. Bypasses cached data for immediate updates. Use when you need the most current delivery status.

Returns: Real-time tracking status directly from the carrier with full event history
Parameters
tracking_number *stringThe package tracking number to query in real-time
carriernumberOptional numeric carrier code
Example
Get the absolute latest status for a DHL package
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{
  "tool": "package-tracker",
  "skill": "realtime_track",
  "input": {
    "tracking_number": "1234567890"
  }
}' \
  https://api.toolrouter.com/v1/tools/call
Loading reviews...
Loading activity...
v0.012026-03-24
  • Initial release with 6 skills: track_package, tracking_details, list_packages, stop_tracking, check_quota, realtime_track

Quick Start

MCP (Claude Code)
claude mcp add --transport stdio \
  --env TOOLROUTER_API_KEY=YOUR_API_KEY \
  toolrouter -- npx -y toolrouter-mcp
REST API
curl -H "Authorization: Bearer $TOOLROUTER_API_KEY" \
  -d '{"tool":"package-tracker","skill":"track_package","input":{}}' \
  https://api.toolrouter.com/v1/tools/call

Frequently Asked Questions

Can I just paste a tracking number?

`track_package` registers the number, auto-detects the carrier, and returns the current status, event history, and estimated delivery.

How do I get the most detailed scan history?

`tracking_details` gives the full event timeline with timestamps, locations, and carrier-level breakdowns.

Can I see all my shipments in one place?

`list_packages` shows tracked shipments with optional status, date-range, or tracking-number filters.

How do I pause or remove a shipment, and what if I need the latest update?

`stop_tracking` removes a package from monitoring, and `realtime_track` bypasses cached data to pull the carrier's freshest status.