Cdek logo

Cdek

MCP server for CDEK delivery service API — create orders, track shipments, search delivery points

Install Cdek

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "cdek": {
      "command": "uvx",
      "args": [
        "mcp-server-cdek"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

uvx mcp-server-cdek

Process exited before answering initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 13d ago.

Overview

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 53d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 12d ago via OSV.dev · mcp-server-cdek (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

Last commit5mo agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

From the project README

mcp-server-cdek

Version

MCP-сервер, CLI-утилита и библиотека Pydantic-моделей для API СДЭК v2.

  • MCP-сервер — интеграция с Claude Code, Claude Desktop и другими MCP-клиентами
  • CLI-утилита — работа с API из терминала, скрипты и автоматизация
  • Pydantic-модели — типизированные модели API для использования в своих Python-программах

Все данные остаются на вашем компьютере — ключи никуда не передаются.

Оглавление

Возможности

Доставка

ИнструментCLIОписание
cdek_create_ordercreate-orderСоздать заказ на доставку (от меня / ко мне, на ПВЗ / до двери)
cdek_tracktrackОтследить заказ по номеру СДЭК
cdek_barcodebarcodeСкачать PDF штрихкода для заказа
cdek_labellabelСкачать этикетку (A4/A5/A6/A7, по умолчанию A6 ~70x120мм)
cdek_waybillwaybillСкачать PDF накладной для заказа
cdek_delivery_pointsdelivery-pointsПоиск ПВЗ в городе
cdek_citiescitiesПоиск городов СДЭК по названию

Локальный справочник товаров

ИнструментCLIОписание
goods_listgoods listСписок всех товаров
goods_addgoods addДобавить товар (название, вес, габариты, цена)
goods_removegoods removeУдалить товар по названию

Товары хранятся локально в ~/.config/mcp-server-cdek/goods.json. При создании заказа параметры берутся из справочника (если не указаны явно).

Настройки

ИнструментCLIОписание
config_show—Показать текущую конфигурацию (отправитель, ПВЗ, дефолты товара)
config_set—Установить значение конфигурации

Настройки хранятся в ~/.config/mcp-server-cdek/config.json. Можно настроить через Claude: «установи компанию-отправителя ООО Рога».


MCP-сервер

Установка

Шаг 1. Получить ключи API СДЭК

  1. Зарегистрируйтесь в личном кабинете СДЭК
  2. Перейдите в Настройки → Интеграция
  3. Скопируйте Client ID и Client Secret

Шаг 2. Подключить MCP-сервер

Подключение к Claude Code

Способ 1: через uvx (не требует установки пакета)

Требуется uv — если не установлен:

Terminal
curl -LsSf https://astral.sh/uv/install.sh | sh
Terminal
claude mcp add cdek \
  -e CDEK_CLIENT=ваш_client_id \
  -e CDEK_SECRET=ваш_client_secret \
  -- uvx mcp-server-cdek

Способ 2: через pip

Terminal
pip install mcp-server-cdek

claude mcp add cdek \
  -e CDEK_CLIENT=ваш_client_id \
  -e CDEK_SECRET=ваш_client_secret \
  -- python -m mcp_server_cdek

Данные отправителя настраиваются через Claude: «установи отправителя: ООО Компания, Иванов И.И., ...» → config_set. Также можно передать через env vars (см. ниже).

Для удаления:

Terminal
claude mcp remove cdek

Подключение к Claude Desktop

Добавьте в конфигурационный файл:

КлиентОСПуть к файлу
Claude Codeвсе~/.claude/settings.json (секция mcpServers)
Claude DesktopmacOS~/Library/Application Support/Claude/claude_desktop_config.json
Claude DesktopWindows%APPDATA%\Claude\claude_desktop_config.json
Claude DesktopLinux~/.config/Claude/claude_desktop_config.json

Через uvx:

config.json
{
  "mcpServers": {
    "cdek": {
      "command": "uvx",
      "args": ["mcp-server-cdek"],
      "env": {
        "CDEK_CLIENT": "ваш_client_id",
        "CDEK_SECRET": "ваш_client_secret"
      }
    }
  }
}

Через pip (после pip install mcp-server-cdek):

config.json
{
  "mcpServers": {
    "cdek": {
      "command": "python",
      "args": ["-m", "mcp_server_cdek"],
      "env": {
        "CDEK_CLIENT": "ваш_client_id",
        "CDEK_SECRET": "ваш_client_secret"
      }
    }
  }
}

Остальные настройки (отправитель, ПВЗ, дефолты товара) задаются через config_set или env vars (см. таблицу ниже).

Подключение через --mcp-config

Подключает сервер только на время одной сессии Claude, не сохраняя в настройки. Токен хранится в отдельном .env.mcp файле, а не в конфиге Claude.

Из JSON-строки:

Terminal
claude --mcp-config '{"cdek":{"command":"bash","args":["-c","source ~/.env.mcp && exec uvx mcp-server-cdek"]}}'

Из файла:

Terminal
claude --mcp-config ~/mcp-servers.json

Пример ~/mcp-servers.json:

config.json
{
  "cdek": {
    "command": "bash",
    "args": ["-c", "source ~/.env.mcp && exec uvx mcp-server-cdek"]
  }
}

Пример ~/.env.mcp:

Code
CDEK_CLIENT=ваш_client_id
CDEK_SECRET=ваш_client_secret

Шаг 3. Проверить

Попросите Claude: «найди ПВЗ СДЭК в Москве на Тверской» — он вызовет cdek_delivery_points.

Примеры (MCP)

  • «отправь посылку Иванову на ПВЗ MSK005, телефон +79001234567» → cdek_create_order
  • «отправь посылку до двери: Москва, Тверская 1, Петрову +79007654321» → cdek_create_order
  • «создай возвратный заказ от Сидорова, адрес: Самара, Ленина 10» → cdek_create_order (to_me)
  • «отследи посылку СДЭК 1234567890» → cdek_track
  • «скачай штрихкод для заказа 1234567890» → cdek_barcode
  • «скачай этикетку для заказа 1234567890» → cdek_label
  • «скачай этикетку A4 для заказа 1234567890» → cdek_label (format=A4)
  • «скачай накладную для заказа 1234567890» → cdek_waybill
  • «найди ПВЗ в Новосибирске» → cdek_delivery_points
  • «какие города СДЭК есть на "Новосиб"?» → cdek_cities
  • «добавь товар: Wi-Fi модем, 0.17 кг, 8x7x10 см» → goods_add
  • «список товаров» → goods_list

CLI-утилита

Установка (CLI)

Terminal
pip install mcp-server-cdek

Переменные окружения CDEK_CLIENT и CDEK_SECRET обязательны:

server.ts
export CDEK_CLIENT=ваш_client_id
export CDEK_SECRET=ваш_client_secret

Или через файл:

bash
mcp-server-cdek --env /path/to/.env <command>

Формат файла — KEY=VALUE, по одной переменной на строку, #-комментарии.

Данные отправителя берутся из ~/.config/mcp-server-cdek/config.json или переменных окружения.

Использование (CLI)

Без аргументов запускается MCP-сервер, с командой — CLI. Все команды выводят JSON.

bash
# Версия
mcp-server-cdek --version

# Справка
mcp-server-cdek --help
mcp-server-cdek <command> --help

Примеры команд

bash
# Создать заказ (от меня на ПВЗ)
mcp-server-cdek create-order --direction from_me --name "Петров Пётр" --phone "+79007654321" --pvz MSK005

# Создать заказ (от меня до двери)
mcp-server-cdek create-order --direction from_me --name "Петров Пётр" --phone "+79007654321" --address "Москва, Тверская 1"

# Создать возвратный заказ (ко мне)
mcp-server-cdek create-order --direction to_me --name "Сидоров" --phone "+79009876543" --address "Самара, Ленина 10"

# Отследить заказ
mcp-server-cdek track 1234567890

# Скачать штрихкод
mcp-server-cdek barcode 1234567890 --output /tmp/barcode.pdf

# Скачать этикетку (по умолчанию A6 ~70x120мм)
mcp-server-cdek label 1234567890 --output /tmp/label.pdf
mcp-server-cdek label 1234567890 --output /tmp/label_a4.pdf --format A4

# Скачать накладную
mcp-server-cdek waybill 1234567890 --output /tmp/waybill.pdf

# Поиск ПВЗ
mcp-server-cdek delivery-points Москва --search Тверская

# Поиск городов
mcp-server-cdek cities Новосиб

# Справочник товаров
mcp-server-cdek goods list
mcp-server-cdek goods add --name "Wi-Fi модем" --weight 0.17 --height 8 --width 7 --length 10
mcp-server-cdek goods remove --name "Wi-Fi модем"

Pydantic-модели

Пакет содержит типизированные Pydantic-модели всех объектов API СДЭК v2. Модели можно использовать в своих Python-программах для валидации данных и автодополнения в IDE.

Установка (библиотеки)

Terminal
pip install mcp-server-cdek

Использование в своих программах

server.ts
from mcp_server_cdek.models import OrderRequest, TariffRequest, Location, Package, Item

# Валидация данных из API
data = {"tariff_code": 136, "from_location": {"code": 44}, "to_location": {"code": 137}}
req = TariffRequest.model_validate(data)
print(req.tariff_code)  # type-safe доступ к полям

# Создание объекта
item = Item(name="Товар", ware_key="ART001", weight=170, cost=1000, amount=1, payment={"value": 0})
print(item.model_dump_json())

Все модели используют extra="allow" для forward compatibility — неизвестные поля API не вызывают ошибок.

Полный список моделей: models.py


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

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Cdek

cdek is an MCP server that connects MCP clients to the CDEK v2 delivery API. It provides tools to create delivery orders, track shipments, download barcodes, labels, and waybills, and search CDEK cities and pickup points. It also includes local goods and configuration management. API keys remain on your computer.

Use the cdek_create_order tool to create a CDEK delivery order. It supports shipments from or to you, delivery to a pickup point or door, and can use product details from the local goods directory when parameters are not provided explicitly.

Use the cdek_track tool with the CDEK order number to track a shipment. The server also provides cdek_barcode, cdek_label, and cdek_waybill tools for downloading shipment documents.

Use cdek_delivery_points to search pickup points in a city and cdek_cities to search CDEK cities by name. These tools are available through the MCP server for delivery-point and city lookup.

Set the CDEK_CLIENT and CDEK_SECRET environment variables when starting the server. You obtain these credentials from the CDEK personal account under Settings → Integration; the README provides setup examples for uvx, pip, Claude Code, and Claude Desktop.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewCdek AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/cdek?style=directory)](https://allmcps.com/mcp/cdek)
HTML Embed
<a href="https://allmcps.com/mcp/cdek"><img src="https://allmcps.com/api/badge/cdek?style=directory" alt="Cdek on AllMCPs" /></a>