Skip to main content
Glama

Parcel Pilot MCP использует Playwright Chromium для сохранения состояния входа в ваш личный браузер, а затем предоставляет данные о посылках ИИ-клиенту через MCP. Вы можете спрашивать его так:

查询我所有待收货快递
今天有没有已经签收的包裹?
帮我查一下上周淘宝订单的物流进度

Он предназначен для личного использования и может быть запущен как локально на Mac, так и на вашем собственном Linux-сервере. Это не официальный API для Taobao, JD или Cainiao.

Основные функции

Функция

Описание

Локальный вход

Сканирование QR-кода происходит в вашем собственном профиле Playwright Chromium.

Прямой вызов ИИ

Через MCP stdio доступны get_my_packages, track_package, get_delivered_today.

Единая модель для платформ

Данные о посылках с Taobao, JD и Cainiao приводятся к единому формату.

Локальный или серверный запуск

Поддерживается запуск на macOS или развертывание через Docker на личном Linux-сервере.

Без обхода защиты

Капчи, SMS, слайдеры и предупреждения о безопасности требуют вашего ручного участия.

Related MCP server: Parcel MCP Server

Пример ответа

{
  "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"
    }
  ]
}

Статус платформ

Платформа

Статус

Примечание

Taobao

Парсер состояния входа готов

Извлекает сводку логистики со страницы заказов, например «В пути, ожидается доставка сегодня».

JD

Адаптер состояния входа готов

Структура входа и сессии подключена, селекторы страниц требуют проверки с личным аккаунтом.

Cainiao

Адаптер состояния входа готов

Структура входа и сессии подключена, селекторы страниц требуют проверки с личным аккаунтом.

Страницы сайтов электронной коммерции часто меняются, поэтому парсеры требуют поддержки в соответствии с актуальным состоянием страниц.

Быстрый старт

npm install
npm run build

Playwright установит Chromium во время npm install. Если в Linux отсутствуют системные зависимости, выполните:

npx playwright install-deps chromium

Скопируйте .env.example в .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/Shanghai

Для первого входа на macOS рекомендуется открыть видимый браузер:

PACKAGE_ASSISTANT_HEADLESS=false node dist/cli/open-login-browser.js taobao

После сканирования QR-кода и прохождения проверки выполните синхронизацию и запрос:

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-клиента

Любой клиент, поддерживающий MCP stdio, может быть настроен следующим образом:

{
  "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"
      }
    }
  }
}

Процесс первого входа

  1. Попросите ИИ-клиент вызвать login_taobao, login_jd или login_cainiao.

  2. Откройте возвращенный screenshotPath, обычно он находится в var/login/.

  3. Отсканируйте QR-код телефоном для входа.

  4. Вручную пройдите капчу, SMS, слайдер или проверку безопасности.

  5. Вызовите sync_packages.

  6. После этого можно использовать get_my_packages, track_package или get_delivered_today.

Если скриншот QR-кода устаревает слишком быстро или страница входа требует взаимодействия, можно открыть видимый браузер через noVNC, SSH X forwarding или сеанс рабочего стола:

PACKAGE_ASSISTANT_HEADLESS=false npm run dev

Инструменты MCP

Инструмент

Назначение

login_taobao

Открывает или обновляет процесс входа в Taobao и возвращает скриншот входа.

login_jd

Открывает или обновляет процесс входа в JD и возвращает скриншот входа.

login_cainiao

Открывает или обновляет процесс входа в Cainiao и возвращает скриншот входа.

sync_packages

Синхронизирует данные о посылках с одной или всех настроенных платформ.

get_my_packages

Запрашивает нормализованный список посылок с фильтрацией по статусу.

track_package

Запрашивает детали конкретной посылки по ID.

get_delivered_today

Запрашивает посылки, доставленные сегодня, согласно настроенному часовому поясу.

Развертывание на личном Linux-сервере

Рекомендуемый вариант:

  • Docker и Docker Compose.

  • Доступ только через SSH.

  • MCP запускается ИИ-клиентом на той же машине через stdio или используется через SSH/VPN.

  • Не предоставлять публичный HTTP-доступ без аутентификации.

Развертывание с локальной машины:

./scripts/aliyun-deploy.sh user@your-server:/opt/parcel-pilot-mcp

Выполните однократный вход и синхронизацию на сервере:

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_packages

Для интерактивного удаленного браузера:

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-server

Затем откройте:

http://127.0.0.1:6080/vnc.html?autoconnect=true&resize=scale

Вызов MCP на сервере через SSH:

{
  "mcpServers": {
    "parcel-pilot": {
      "command": "ssh",
      "args": [
        "user@your-server",
        "cd /opt/parcel-pilot-mcp && docker compose run --rm -T package-assistant"
      ]
    }
  }
}

Модель безопасности

Относитесь к папке browser-profiles/ как к «уже вошедшему в систему браузеру» и защищайте её.

  • Не отправляйте в репозиторий data/, var/, browser-profiles/, .env или tmp-login/.

  • Не выставляйте процесс MCP, noVNC или временный браузер в публичную сеть.

  • Рекомендуется использовать только для собственных аккаунтов и на контролируемых вами машинах.

  • Тот, кто получит доступ к профилю браузера, может увидеть заказы, логистику, адреса доставки и страницы аккаунта.

  • Проект не обходит капчи, слайдеры, SMS-подтверждения или системы защиты платформ.

  • Рекомендуется отключить оплату без пароля, автоплатежи и быструю покупку, чтобы снизить риски при компрометации сессии.

Разработка

npm test
npm run build

Часто используемые локальные команды:

npm run call-tool -- get_my_packages
npm run call-tool -- sync_packages '{"source":"taobao"}'

Дорожная карта

  • Улучшить селекторы для JD и Cainiao с использованием реальных страниц аккаунтов.

  • Добавить опциональную маскировку чувствительных данных (названия товаров, адреса).

  • Добавить диагностику состояния провайдеров (истечение сессии, страницы защиты, пустые страницы).

  • Добавить примеры конфигурации MCP для Claude Desktop, Codex и других клиентов.

Лицензия

MIT

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables 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
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Integrates 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.
    14
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    MCP server for tracking Japanese logistics carriers (Yamato, Sagawa, Japan Post) via mock or AfterShip adapter. Enables AI agents to query shipment status and history in natural language.
    3
    MIT