Skip to main content
Glama

UPS MCP Server

MIT License Node.js 20+ MCP TypeScript npm

Сервер Model Context Protocol для API доставки и логистики UPS. Позволяет ИИ-агентам создавать отправления, отслеживать посылки, получать тарифы, проверять адреса, планировать вывоз и находить отделения UPS.

Быстрая установка

Добавьте в конфигурацию MCP (~/.cursor/mcp.json, .cursor/mcp.json или claude_desktop_config.json):

{
  "mcpServers": {
    "ups": {
      "command": "npx",
      "args": ["-y", "ups-mcp"],
      "env": {
        "UPS_CLIENT_ID": "your_client_id",
        "UPS_CLIENT_SECRET": "your_client_secret",
        "UPS_ACCOUNT_NUMBER": "123456",
        "UPS_ENVIRONMENT": "sandbox"
      }
    }
  }
}

Получите свои учетные данные на портале разработчиков UPS.

Инструменты

Инструмент

Описание

create_shipment

Создание отправления и генерация транспортной этикетки

void_shipment

Отмена отправления и аннулирование этикетки

track_package

Отслеживание посылки с полной историей перемещений

get_rates

Получение тарифов на доставку для всех доступных услуг

get_time_in_transit

Получение расчетных дат доставки

validate_address

Проверка адресов в США/Пуэрто-Рико

schedule_pickup

Планирование вывоза посылки

cancel_pickup

Отмена запланированного вывоза

find_locations

Поиск ближайших отделений UPS и пунктов приема

Предварительные требования

  • Node.js 20+

  • Учетные данные портала разработчиков UPS (Начать работу)

  • Номер счета UPS (для отправки и расчета стоимости)

Установка

npx ups-mcp

Или установите глобально:

npm install -g ups-mcp

Конфигурация

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

Переменная

Обязательно

Описание

UPS_CLIENT_ID

Да

OAuth Client ID с портала разработчиков UPS

UPS_CLIENT_SECRET

Да

OAuth Client Secret

UPS_ENVIRONMENT

Нет

sandbox (по умолчанию) или production

UPS_ACCOUNT_NUMBER

Нет

6-значный номер счета UPS (обязательно для отправки/расчета)

Клиент

Файл конфигурации

Cursor (проект)

.cursor/mcp.json

Cursor (глобально)

~/.cursor/mcp.json

Claude Desktop

claude_desktop_config.json

VS Code

.vscode/mcp.json

Примеры использования

Создание отправления

"Отправь посылку весом 5 фунтов с 123 Main St, Atlanta GA 30301 на 456 Oak Ave, Los Angeles CA 90001 через UPS Ground"

Получение тарифов

"Какие тарифы на доставку посылки весом 10 фунтов из Нью-Йорка в Чикаго?"

Отслеживание посылки

"Отследи посылку 1Z999AA10123456784"

Проверка адреса

"Является ли 1600 Pennsylvania Ave NW, Washington DC 20500 действительным адресом?"

Планирование вывоза

"Запланируй вывоз 3 посылок с нашего склада завтра в 9 утра"

Разработка

git clone https://github.com/roscoej/ups-mcp.git
cd ups-mcp
npm install
npm run build

Тестирование с помощью MCP Inspector

npm run inspector

Локальный запуск

cp .env.example .env
# Edit .env with your credentials
npm run build
node dist/index.js

Архитектура

src/
├── index.ts            # Entry point (stdio transport)
├── config.ts           # Environment variable resolution
├── server.ts           # MCP server factory
├── client/
│   ├── auth.ts         # OAuth 2.0 token manager
│   ├── http.ts         # HTTP client with retry + error handling
│   └── errors.ts       # Structured error types
├── tools/
│   ├── tracking.ts     # track_package
│   ├── shipping.ts     # create_shipment, void_shipment
│   ├── rating.ts       # get_rates, get_time_in_transit
│   ├── address.ts      # validate_address
│   ├── pickup.ts       # schedule_pickup, cancel_pickup
│   ├── locator.ts      # find_locations
│   ├── builders.ts     # Shared request payload builders
│   ├── constants.ts    # UPS API codes and enumerations
│   └── schemas.ts      # Zod input schemas
└── types/
    ├── config.ts       # Server configuration
    ├── shipping.ts     # Shipment types + service codes
    ├── tracking.ts     # Tracking types
    ├── rating.ts       # Rating types
    ├── address.ts      # Address validation types
    └── pickup.ts       # Pickup types

Безопасность

Ваши учетные данные API конфиденциальны. Никогда не добавляйте их в систему контроля версий. Используйте переменные окружения или менеджер секретов.

Отказ от ответственности

Этот проект является независимым, неофициальным сторонним инструментом. Он не связан, не одобрен, не спонсируется и каким-либо иным образом официально не относится к United Parcel Service, Inc. (UPS) или любой из ее дочерних компаний.

"UPS" и логотип UPS являются зарегистрированными товарными знаками United Parcel Service of America, Inc. Все остальные товарные знаки являются собственностью их соответствующих владельцев. Использование этих имен предназначено только для идентификации и обеспечения совместимости и не подразумевает одобрения.

Это программное обеспечение предоставляется "КАК ЕСТЬ", без каких-либо гарантий. Вы несете единоличную ответственность за:

  • Соблюдение Соглашения о технологиях UPS и всех применимых условий обслуживания UPS, ограничений по количеству запросов и политик допустимого использования.

  • Обеспечение безопасности ваших учетных данных API и учетной записи UPS.

  • Все действия, выполняемые через вашу учетную запись UPS с помощью этого инструмента.

  • Соблюдение всех применимых законов и нормативных актов в вашей юрисдикции.

Авторы и участники не несут ответственности за ущерб, возникший в результате использования этого программного обеспечения или API UPS, к которым осуществляется доступ через него.

Участие в разработке

Мы приветствуем вклад в проект! Пожалуйста, ознакомьтесь с CONTRIBUTING.md для получения инструкций.

Лицензия

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/roscoej/ups-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server