cdek-mcp

io.github.theYahia由 GitHub 帳號 theYahia 發布v2.0.2更新於 Oct 24, 2026

MCP server for CDEK — delivery, tariffs, tracking, order management (Russia)

已驗證STDIO僅桌面效率與工作流商業與電商

概覽

AI 產生的概覽

針對俄羅斯 CDEK 配送服務的 MCP 伺服器,讓助理計算運費、建立與追蹤訂單、尋找取件點並管理快遞員到府取件。

可以做什麼
依路線計算配送費用與時效,並比較所有可用資費;依名稱、郵遞區號或國家查詢城市與地區。建立、查看、列出與取消配送訂單,包含寄件人、收件人與貨件資訊。依 CDEK 運單號追蹤包裹。依城市或 GPS 座標尋找取件點與自取櫃。產生條碼與標籤,並輸出 PDF 收據或運單。預約並查詢快遞員到府取件,註冊或刪除訂單狀態變更的 webhook 訂閱。
適用情境
適合需要讓助理回答 CDEK 配送問題、比較資費、下單或取消配送、追蹤包裹、尋找取件點或安排快遞員取件的場景,尤其是俄羅斯電商與物流工作流程。
執行需求
透過 npx 以 npm 套件 @theyahia/cdek-mcp 在本機執行(需要 Node.js)。需要 CDEK 帳戶中的 API 憑證:CDEK_CLIENT_ID 與 CDEK_CLIENT_SECRET。選用 CDEK_SANDBOX=true 可使用測試環境;HTTP_PORT 可啟用 HTTP 傳輸。需要能連線至 CDEK API 的網路。
安裝前請注意
連線正式環境時,伺服器會建立、取消與修改真實的配送訂單、快遞員取件與 webhook;測試時請設定 CDEK_SANDBOX=true。它需要 CDEK_CLIENT_ID 與 CDEK_CLIENT_SECRET,這兩個憑證可存取 CDEK 帳戶。README 公開了一組共用的沙箱測試金鑰,CDEK 會不定期更換;除測試外不要依賴它。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 cdek-mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

MCP-сервер для СДЭК API — 16 инструментов для ИИ-агента: тарифы, заказы, трекинг

Если вы искали, как подключить доставку СДЭК к Claude или другому ИИ-агенту, — этот сервер закрывает весь цикл отправления через CDEK API v2: расчёт тарифов и сроков, создание и отмена заказов, трекинг по накладной, поиск городов и пунктов выдачи, вызов курьера, штрихкоды и квитанции, вебхуки. Спрашиваете «сколько стоит и как долго везти 2 кг из Москвы в Казань» — получаете сравнение тарифов таблицей, а не форму на сайте. Работает и на тестовом контуре СДЭК, и на боевом.

[npm] [CI] [License: MIT]

[Демонстрация: вопрос «сколько стоит и как долго везти 2 кг из Москвы в Казань» — агент вызывает calculate_tariff_list и отвечает таблицей тарифов]

Инструменты (16)

Тарифы

ИнструментОписание
calculate_tariffРассчитать стоимость и срок доставки по конкретному тарифу
calculate_tariff_listВсе доступные тарифы с ценами по маршруту

Заказы

ИнструментОписание
create_orderСоздать заказ на доставку с отправителем, получателем и местами
get_orderДетали и статус заказа по UUID
delete_orderОтменить или удалить заказ по UUID
list_ordersПоиск и фильтрация заказов по периоду, номеру ИМ или накладной СДЭК

Трекинг

ИнструментОписание
track_shipmentОтследить отправление по номеру накладной СДЭК

География

ИнструментОписание
get_citiesПоиск по справочнику городов — по названию, индексу или стране
get_regionsПоиск по справочнику регионов — по стране или названию
list_delivery_pointsНайти пункты выдачи и постаматы по городу или GPS-координатам

Штрихкоды и печать

ИнструментОписание
generate_barcodeСформировать штрихкод или этикетку для заказа
print_receiptСформировать PDF квитанции или накладной по заказу

Вызов курьера

ИнструментОписание
create_courier_pickupЗаказать забор груза курьером по заказу
get_courier_pickupПроверить статус заявки на вызов курьера

Вебхуки

ИнструментОписание
create_webhookЗарегистрировать вебхук на смену статуса заказа или фото доставки
delete_webhookУдалить подписку на вебхук по UUID

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

Claude Desktop

~/.config/claude/claude_desktop_config.json (macOS) или %APPDATA%\Claude\claude_desktop_config.json (Windows):

json
{  "mcpServers": {    "cdek": {      "command": "npx",      "args": ["-y", "@theyahia/cdek-mcp"],      "env": {        "CDEK_CLIENT_ID": "<YOUR_CLIENT_ID>",        "CDEK_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",        "CDEK_SANDBOX": "true"      }    }  }}

Cursor / Windsurf

.cursor/mcp.json или .windsurf/mcp.json:

json
{  "mcpServers": {    "cdek": {      "command": "npx",      "args": ["-y", "@theyahia/cdek-mcp"],      "env": {        "CDEK_CLIENT_ID": "<YOUR_CLIENT_ID>",        "CDEK_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",        "CDEK_SANDBOX": "true"      }    }  }}

VS Code (Copilot)

.vscode/mcp.json:

json
{  "servers": {    "cdek": {      "command": "npx",      "args": ["-y", "@theyahia/cdek-mcp"],      "env": {        "CDEK_CLIENT_ID": "<YOUR_CLIENT_ID>",        "CDEK_CLIENT_SECRET": "<YOUR_CLIENT_SECRET>",        "CDEK_SANDBOX": "true"      }    }  }}

Транспорт Streamable HTTP

Для веб-развёртываний используйте флаг --http или переменную HTTP_PORT:

bash
HTTP_PORT=3000 npx @theyahia/cdek-mcp --http

Эндпоинты:

  • POST /mcp — MCP JSON-RPC
  • GET /mcp — SSE-поток
  • DELETE /mcp — завершение сессии
  • GET /health — проверка состояния

Переменные окружения

ПеременнаяОбяз.Описание
CDEK_CLIENT_IDдаClient ID из личного кабинета СДЭК
CDEK_CLIENT_SECRETдаClient Secret из личного кабинета СДЭК
CDEK_SANDBOXнетtrue — работать в песочнице (api.edu.cdek.ru)
HTTP_PORTнетПорт HTTP-транспорта (включает HTTP-режим)

Где взять ключи API: личный кабинет СДЭК → Интеграция → Ключи API.

Режим песочницы

Задайте CDEK_SANDBOX=true, чтобы работать с тестовым контуром СДЭК (api.edu.cdek.ru). Боевой контур — api.cdek.ru.

СДЭК публикует общий тестовый аккаунт для интеграционных проверок:

  • Client ID: EMscd6r9JnFiQ3bLoyjJY6eM78JrJceI
  • Client Secret: PjLZkKBHEiLK3YsjtNrt3TGNG0ahs3kh

⚠️ СДЭК время от времени меняет этот общий тестовый аккаунт. Если вы получили OAuth token error (HTTP 401) … invalid_client, публичная пара уже сменилась — запросите собственные ключи песочницы в кабинете интеграции (lk.cdek.ru → Интеграция → Ключи API).

Авторизация

OAuth 2.0, поток Client Credentials, реализован в OAuthStrategy из @theyahia/mcp-core:

  • Токен запрашивается автоматически при первом обращении
  • Кэширование токена с упреждающим обновлением незадолго до истечения
  • Дедупликация параллельных запросов (одно обновление токена делится между всеми)
  • Автоматический повтор на 401 со сбросом токена

E-commerce-стек

Соберите полный ИИ-стек для интернет-магазина вместе с другими серверами WWmcp:

СерверНазначение
cdek-mcpДоставка и логистика
dadata-mcpПроверка адресов, поиск компаний

Часть серии WWmcp.

Демо-промпты

  1. «Сколько стоит отправить посылку 2 кг из Москвы в Санкт-Петербург?» Использует get_cities для поиска кодов городов, затем calculate_tariff_list для сравнения всех доступных тарифов.

  2. «Найди ближайший пункт выдачи СДЭК к Красной площади» Использует get_cities, чтобы получить city_code Москвы, затем list_delivery_points с latitude: 55.7539, longitude: 37.6208, radius_km: 5 — результаты фильтруются по радиусу и сортируются по расстоянию (у каждого есть поля координаты и расстояние_км).

  3. «Создай заказ на отправку книги из Казани в Новосибирск, вызови курьера и распечатай квитанцию» Использует create_order, затем create_courier_pickup для забора груза и print_receipt для накладной.

Разработка

bash
git clone https://github.com/theYahia/cdek-mcp.gitcd cdek-mcpnpm install
npm run lint        # ESLint (flat config)npm run typecheck   # tsc --noEmitnpm run build       # сборка в dist/npm test            # юнит-тесты (vitest)npm run test:e2e    # e2e smoke-тест (перечисляет инструменты, без реальных ключей)

Запуск сервера локально против песочницы СДЭК (api.edu.cdek.ru) — с общей тестовой парой из раздела Режим песочницы или со своими ключами:

bash
CDEK_SANDBOX=true \CDEK_CLIENT_ID=<YOUR_SANDBOX_CLIENT_ID> \CDEK_CLIENT_SECRET=<YOUR_SANDBOX_CLIENT_SECRET> \npm run dev

Заметки о релизах — в CHANGELOG.md.

Лицензия

MIT


Часть WWmcp · Telegram: @vhodvai

來源:README.md,提交 ce17a7f

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v2.0.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分