logistics-tracking

Track international packages by tracking number. Supports 3100+ carriers (China Post, DHL, FedEx, UPS, USPS, Yanwen, Cainiao, etc.) via 17track. Optional: set TRACK17_API_KEY for best results. Without a key, uses Playwright (headless browser) as fallback. Use when the user asks about package tracking, shipment status, delivery time, or logistics queries.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "logistics-tracking" with this command: npx skills add shopmeskills/mcp

Logistics Tracking

Track international packages by tracking number only. Supports 3100+ carriers worldwide.

When to Use

  • User asks "where is my package" or provides a tracking number
  • User needs to check shipment status or delivery estimate
  • User asks about customs clearance or logistics exceptions
  • User needs to track multiple packages at once

How It Works

ModeAPI Key Required?Description
With TRACK17_API_KEYYes (1 key)Uses the official api.17track.net — most reliable, 3100+ carriers.
Without keyNoUses Playwright (headless Chromium) to query t.17track.net. Requires playwright npm package.

Recommendation: Set TRACK17_API_KEY for the best reliability. Get a free key at https://api.17track.net

Option A: Deploy as HTTP Service (users need no key)

You deploy the MCP HTTP server with TRACK17_API_KEY on your server. End users connect via URL — they don't need any API key.

1. Start the server (your side)

export TRACK17_API_KEY=your-17track-api-key
npx -y @shopmeagent/logistics-tracking-mcp serve

# Default: http://0.0.0.0:3000/mcp
# Override with PORT and HOST env vars

2. User/client MCP config (Streamable HTTP)

{
  "mcpServers": {
    "logistics-tracking": {
      "type": "streamable-http",
      "url": "https://your-domain.com/mcp"
    }
  }
}

Users only need a tracking number — no API key required on their end.


Option B: Local stdio (zero-config or with key)

Zero-config (no key, uses Playwright fallback — requires playwright installed):

{
  "mcpServers": {
    "logistics-tracking": {
      "command": "npx",
      "args": ["-y", "@shopmeagent/logistics-tracking-mcp"]
    }
  }
}

Recommended — with API key for broader carrier coverage and better reliability:

{
  "mcpServers": {
    "logistics-tracking": {
      "command": "npx",
      "args": ["-y", "@shopmeagent/logistics-tracking-mcp"],
      "env": {
        "TRACK17_API_KEY": "your-17track-api-key"
      }
    }
  }
}

Get a free 17track API key: https://api.17track.net

Using with OpenClaw

Add this skill to OpenClaw:

npx skills add shopmeskills/mcp

Then in OpenClaw's MCP configuration, add either the HTTP or stdio config shown above.

Example prompts:

  • "Track package YT2412345678901234"
  • "Where is my package LX123456789CN?"
  • "Check status of 1ZABCDEF1234567890"

Available Tools

track_package

Query tracking info for a single package.

  • Input: trackingNumber (required), carrier (optional, auto-detected)
  • Returns: status, current location, timeline of events

detect_carrier

Identify the carrier from a tracking number's format.

  • Input: trackingNumber
  • Returns: carrier name, confidence level

batch_track

Track up to 40 packages at once.

  • Input: trackingNumbers array
  • Returns: array of tracking results

explain_status

Get a human-readable explanation of a tracking status code.

  • Input: statusCode (e.g. InTransit, CustomsClearance, Delivered)
  • Returns: description and advice in English

Tracking Number Format Guide

PatternCarrierExample
XX123456789CNChina PostLX123456789CN
EX123456789CNChina EMSEA123456789CN
YT + 16 digitsYanwenYT1234567890123456
LP + 14+ digitsCainiaoLP12345678901234
SF + 12+ digitsSF ExpressSF1234567890123
1Z + 16 charsUPS1ZABCDEF1234567890
94/93/92 + 20 digitsUSPS9400111899223100012345
10-11 digitsDHL1234567890
12-15 digitsFedEx123456789012

Typical Delivery Times (International)

RouteStandardExpress
China to US15-30 days5-10 days
China to EU15-30 days5-10 days
China to SE Asia7-15 days3-7 days
China to Japan/Korea5-10 days3-5 days

Status Codes Explained

  • InfoReceived: Carrier has the info but hasn't picked up the package (1-3 day wait)
  • InTransit: Package is moving through the logistics network
  • CustomsClearance: Going through customs (3-7 business days typical)
  • OutForDelivery: Final delivery attempt today
  • Delivered: Successfully delivered
  • Exception: Problem occurred (customs hold, wrong address, failed delivery)
  • Returned: Being sent back to origin

Tips

  1. No key needed: Without TRACK17_API_KEY, the tool uses Playwright to query 17track directly. Install Playwright with npm install playwright for this to work.
  2. 3100+ carriers: With a 17track API key, auto-detects carrier from the tracking number.
  3. Wait 24-48 hours after shipment before tracking — data may not be available on day one.
  4. Allow at least 2 hours between queries for the same tracking number to avoid rate limiting.
  5. Use batch_track for multiple packages — more efficient than individual queries.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

cn-ecommerce-search

No summary provided by upstream source.

Repository SourceNeeds Review
General

PanchangaAPI — Vedic Astrology

Vedic astrology (Jyotish) REST API powered by Swiss Ephemeris. 17 endpoints: Panchanga, Kundali, Dasha, Muhurta, Choghadiya, Compatibility, Transits, and mor...

Registry SourceRecently Updated
1580Profile unavailable
General

Purefeed

Monitors Twitter/X feeds with AI signal detection. Searches tweets semantically, manages signal detectors, generates human-sounding posts, checks AI detectio...

Registry SourceRecently Updated
2050Profile unavailable
General

Sefaria API MCP

Provides access to the Sefaria API MCP server for retrieving, searching, and exploring Jewish texts and related content via MCP interface.

Registry SourceRecently Updated
560Profile unavailable