Parcel Pilot MCP
Allows querying and tracking Taobao parcel delivery status, including order logistics updates, through the MCP server.
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., "@Parcel Pilot MCP查询我所有待收货快递"
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.
Parcel Pilot MCP uses Playwright Chromium to save your personal browser login state, and then provides package data to AI clients via MCP. You can ask questions like this:
查询我所有待收货快递
今天有没有已经签收的包裹?
帮我查一下上周淘宝订单的物流进度It is suitable for personal use and can run locally on a Mac or on your own Linux server. It is not an official open API integration for Taobao, JD, or Cainiao.
Key Features
Feature | Description |
Local-first login | QR code login happens within your own Playwright Chromium profile. |
AI-callable | Exposes |
Unified multi-platform model | Taobao, JD, and Cainiao data are normalized into a consistent package record format. |
Local or Server-side | Supports local macOS execution and Docker deployment to private Linux servers. |
No risk-control bypass | CAPTCHAs, SMS, sliders, and risk alerts must be handled manually by you. |
Related MCP server: Parcel MCP Server
Response Example
{
"packages": [
{
"id": "taobao-1234567890",
"source": "taobao",
"title": "USB-C 数据线",
"status": "in_transit",
"carrier": "菜鸟",
"trackingNumber": "YT123456789CN",
"lastEvent": "运输中预计今天送达",
"updatedAt": "2026-05-08T09:00:00.000+08:00"
}
]
}Platform Status
Platform | Status | Notes |
Taobao | Browser login state parser available | Parses the "Purchased Items" order page; extracts order-level logistics summaries, e.g., "In transit, expected delivery today". |
JD | Browser login state adapter framework available | Login and session structure integrated; real page selectors require further verification with a personal account. |
Cainiao | Browser login state adapter framework available | Login and session structure integrated; real page selectors require further verification with a personal account. |
E-commerce site pages change frequently, and parsers will need to be maintained based on actual page structures.
Quick Start
npm install
npm run buildPlaywright installs Chromium during npm install. If system dependencies are missing on Linux, you can run:
npx playwright install-deps chromiumCopy .env.example to .env:
PACKAGE_ASSISTANT_DATA_DIR=./data
PACKAGE_ASSISTANT_PROFILE_DIR=./browser-profiles
PACKAGE_ASSISTANT_ARTIFACT_DIR=./var
PACKAGE_ASSISTANT_HEADLESS=true
PACKAGE_ASSISTANT_TIMEZONE=Asia/ShanghaiFor the first login on macOS, it is recommended to open a visible browser:
PACKAGE_ASSISTANT_HEADLESS=false node dist/cli/open-login-browser.js taobaoAfter scanning the QR code and completing necessary verification, sync and query:
node dist/cli/call-tool.js sync_packages '{"source":"taobao"}'
node dist/cli/call-tool.js get_my_packages
node dist/cli/call-tool.js track_package '{"packageId":"taobao-ORDER_ID"}'MCP Client Configuration
Any client that supports MCP stdio can be configured as follows:
{
"mcpServers": {
"parcel-pilot": {
"command": "node",
"args": ["/absolute/path/parcel-pilot-mcp/dist/server.js"],
"env": {
"PACKAGE_ASSISTANT_DATA_DIR": "/absolute/path/parcel-pilot-mcp/data",
"PACKAGE_ASSISTANT_PROFILE_DIR": "/absolute/path/parcel-pilot-mcp/browser-profiles",
"PACKAGE_ASSISTANT_ARTIFACT_DIR": "/absolute/path/parcel-pilot-mcp/var",
"PACKAGE_ASSISTANT_HEADLESS": "true",
"PACKAGE_ASSISTANT_TIMEZONE": "Asia/Shanghai"
}
}
}
}Initial Login Process
Have the AI client call
login_taobao,login_jd, orlogin_cainiao.Open the returned
screenshotPath, usually located undervar/login/.Scan the QR code with your phone to log in.
Manually complete any CAPTCHAs, SMS, sliders, or risk alerts.
Call
sync_packages.You can now ask
get_my_packages,track_package, orget_delivered_today.
If the QR code screenshot expires too quickly, or if the login page requires interaction, you can open a visible browser via noVNC, SSH X forwarding, or a desktop session:
PACKAGE_ASSISTANT_HEADLESS=false npm run devMCP Tools
Tool | Purpose |
| Opens or refreshes the Taobao login process and returns login screenshots/artifacts. |
| Opens or refreshes the JD login process and returns login screenshots/artifacts. |
| Opens or refreshes the Cainiao login process and returns login screenshots/artifacts. |
| Synchronizes package data from a single platform or all configured platforms. |
| Queries the normalized package list, with filtering for pending or delivered items. |
| Queries details for a specific package by package ID. |
| Queries packages delivered today, calculated based on the configured timezone. |
Private Linux Server Deployment
Recommended setup:
Docker and Docker Compose.
Access only via SSH.
MCP is started by an AI client on the same machine via stdio, or used via SSH/VPN.
No public, unauthenticated HTTP entry points.
Deploying from local machine:
./scripts/aliyun-deploy.sh user@your-server:/opt/parcel-pilot-mcpPerform one-time login and sync on the server:
cd /opt/parcel-pilot-mcp
docker compose run --rm -T package-assistant node dist/cli/call-tool.js login_taobao
docker compose run --rm -T package-assistant node dist/cli/call-tool.js login_jd
docker compose run --rm -T package-assistant node dist/cli/call-tool.js login_cainiao
docker compose run --rm -T package-assistant node dist/cli/call-tool.js sync_packagesFor an interactive remote browser:
cd /opt/parcel-pilot-mcp
docker compose run --rm --service-ports package-assistant ./scripts/remote-browser.sh taobao
ssh -N -L 6080:127.0.0.1:6080 user@your-serverThen open:
http://127.0.0.1:6080/vnc.html?autoconnect=true&resize=scaleCall the MCP on the server via SSH:
{
"mcpServers": {
"parcel-pilot": {
"command": "ssh",
"args": [
"user@your-server",
"cd /opt/parcel-pilot-mcp && docker compose run --rm -T package-assistant"
]
}
}
}Security Model
Treat browser-profiles/ as a "logged-in browser" and protect it accordingly.
Do not commit
data/,var/,browser-profiles/,.env, ortmp-login/.Do not expose the MCP process, noVNC, or temporary login browsers to the public internet.
Recommended only for your own accounts and machines you control.
Anyone with access to the browser profile may be able to view orders, logistics, shipping addresses, and account pages.
This project does not bypass CAPTCHAs, sliders, SMS verification, or platform risk controls.
It is recommended to disable low-friction payment/ordering features like small-amount password-free payments, auto-deductions, or express ordering to reduce risks if the login state is misused.
Development
npm test
npm run buildCommon local commands:
npm run call-tool -- get_my_packages
npm run call-tool -- sync_packages '{"source":"taobao"}'Roadmap
Refine JD and Cainiao selectors using more real account pages.
Add optional desensitization for sensitive fields like product names and addresses.
Add provider health diagnostics for expired login states, risk pages, or empty pages.
Add configuration examples for MCP clients like Claude Desktop, Codex, etc.
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Track packages across 1,300+ global carriers with real-time status and AI-powered delivery dates.
Real-time order tracking for Shopify merchants: look up, list, and refresh shipments.
Track parcels across 2,500+ carriers and 3PLs: live delivery status, event history, carrier lookup.
Taiwan CVS pickup + home delivery for AI agents: create, track, print labels via ECPay.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables integration with SF Express shipping and logistics APIs for order management, shipment tracking, route queries, and logistics services through natural language interactions.MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI assistants to track and manage deliveries by interacting with the Parcel delivery tracking API. Users can add new shipments, retrieve active delivery statuses, and look up carrier information through natural language.2-
- AlicenseNot gradedqualityCmaintenanceIntegrates Kuaidi100 logistics services to provide real-time package tracking, delivery time estimations, and shipping cost calculations. It enables users to query express delivery information directly through an MCP-compatible interface.14Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables users to manage package deliveries through the Parcel.app tracking API. It allows AI clients to list active or recent deliveries and add new packages directly to a Parcel account using tracking numbers and carrier codes.11 npmGPL 3.0