# ShipSaving [Health: Active]

**Category:** 📦 Delivery  
**Repository:** https://github.com/waka4674/shipsaving-mcp  
**GitHub Stars:** 0  
**npm Downloads (last month):** 113  
**Views:** 2  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/shipsaving

## Description
MCP server for ShipSaving — shipping rates, labels, orders, tracking

## Tools
Capabilities this server exposes over MCP:

- **get_shipping_rates** — 获取多承运商运费报价比价。需提供寄件地址、收件地址、包裹信息和 ship_date。返回所有可用运费方案，标记最便宜和最快选项。
- **search_shipments** — 搜索运单列表，支持多种条件筛选
- **get_shipment_detail** — 查看运单详细信息
- **track_shipment** — 通过追踪号查询物流状态
- **get_insurance_rates** — 查询保险价格。根据保额和服务等级返回保险费率信息。
- **create_draft_shipment** — 标准下单流程第二步：创建运单草稿（不立即付款）。在 get_shipping_rates 之后、pay_shipment 之前调用。保存地址和包裹信息，等用户确认后再付款。
- **pay_shipment** — 对已选报价的运单进行支付，生成面单。可选附带保险信息。
- **void_label** — 退款/作废未使用的面单
- **search_orders** — 搜索订单列表，支持按状态、店铺、日期、关键词等筛选。当用户提供了类似 ID 的内容（如订单号、追踪号、订单ID等），必须通过 hybrid 参数传入进行搜索。
- **get_order_detail** — 查看订单详细信息
- **create_order** — 手动创建订单。【重要】调用此接口前必须先准备好所有信息：1) 如果用户指定了地址簿ID，先调用 list_addresses 获取该地址的完整信息；2) 确认订单号、商品信息（名称、数量、单价）齐全；3) 缺少任何必填信息时必须先向用户询问，不得传空值调用接口。
- **buy_label_from_order** — 通过已有订单打单（购买面单）。当用户要对订单打单时，必须使用此工具，不得使用 create_draft_shipment + pay_shipment 流程。需要先通过 get_shipping_rates 获取 rate_id。
- **mark_order_shipped** — 标记订单为已发货状态
- **cancel_order** — 取消订单
- **sync_store_orders** — 手动触发店铺订单同步。同步成功后，必须立即调用 search_orders（传入相同的 store_id，status 为 AWAITING）查询刚同步过来的订单并展示给用户。
- **get_order_tags** — 查询所有订单标签
- **list_addresses** — 查询地址簿中的地址列表
- **create_address** — 在地址簿中新建地址
- **update_address** — 编辑/更新地址簿中已有的地址
- **validate_address** — 验证地址是否合法、可达
- **list_packages** — 查询已保存的包裹模板列表
- **list_predefined_packages** — 查询承运商预定义包裹列表。返回按承运商分组的预定义包裹，包含尺寸和重量信息。用户发货时可通过 carrier_package_id 直接引用预定义包裹，无需手动填写尺寸。
- **create_package** — 创建包裹模板，方便下次快速使用
- **list_carriers** — 查询已连接的承运商账户列表
- **get_service_levels** — 查询客户生效中的承运商服务级别
- **list_stores** — 查询已连接的电商店铺列表
- **get_total_savings** — 查看使用 ShipSaving 节省的总金额
- **get_shipping_analysis** — 按时间维度分析运费数据。调用前必须先询问用户选择时间范围，可选值：the_last_7_days（近7天）、the_last_30_days（近30天）、this_month（本月）、last_month（上月）、current_year（今年）、last_year（去年）。
- **get_wallet_info** — 查询钱包余额信息
- **get_transaction_history** — 查询交易记录

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "shipsaving": {
    "command": "npx",
    "args": ["-y","shipsaving-mcp"],
    "env": {
      "SHIPSAVING_APP_KEY": ""
    }
  }
}
```

**Requires environment variables:** `SHIPSAVING_APP_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What ShipSaving MCP server does

The ShipSaving MCP server exposes ShipSaving logistics functions through the Model Context Protocol. It connects an MCP-compatible assistant to the ShipSaving REST API and supports both read and write operations for shipping workflows.

Shipment tools compare rates across carriers, create unpaid draft shipments, pay for shipments and generate labels, void unused labels, search shipment records, retrieve shipment details, track packages, and query insurance pricing. Order tools search by status, store, date, or keywords; retrieve and create orders; buy labels for existing orders; mark orders shipped; cancel orders; trigger store synchronization; and list order tags.

The ShipSaving MCP server also provides account and configuration data. Agents can work with saved addresses, validate deliverability, manage package templates, inspect carrier accounts and service levels, list connected stores, review total savings and shipping analysis, and query wallet and transaction information.

## How it works

The server runs as a Node.js process and communicates with an MCP client over the configured command. Its tools translate agent requests into calls to ShipSaving's logistics API. For example, an assistant can compare rates for package dimensions and addresses, create a draft, then pay for the selected shipment. It can also synchronize store orders before inspecting or updating them.

The repository documents Node.js 18 or newer as a prerequisite. The default installation uses the npm package with `npx`. Claude Code can add the server with an MCP command, while Claude Desktop can load it from its MCP server configuration file.

## Setup and configuration

A ShipSaving App Key is required. Set it with `SHIPSAVING_APP_KEY`; the documented key format uses an `sk_` prefix. The API endpoint defaults to `https://app-gateway.shipsaving.com`, but `SHIPSAVING_API_BASE_URL` can override it. `SHIPSAVING_TIMEOUT_MS` controls the request timeout and defaults to 60,000 milliseconds. `SHIPSAVING_LOG_FILE` selects a log file; without it, logs go to stderr.

For Claude Code, the documented pattern runs `npx -y shipsaving-mcp` with the app key supplied as an environment setting. Claude Desktop requires adding the same command and environment variable to its configuration, then restarting the application. The `claude mcp list` command can be used to check whether the configured server is connected.

## Tools and capabilities

The available tools cover these areas:

- Shipments: rates, drafts, payments, labels, searches, details, tracking, and insurance.
- Orders: search, creation, details, label purchase, shipping status, cancellation, synchronization, and tags.
- Addresses and packages: address book operations, validation, saved package templates, and predefined carrier packages.
- Network data: connected carriers, service levels, and stores.
- Account reporting: savings, shipping analysis, wallet balance, and transaction history.

The ShipSaving MCP server can therefore support workflows ranging from one-off rate selection to store-order fulfillment, provided the account and API access contain the required data.

## Limitations and notes

The material identifies ShipSaving App Key access as mandatory; it does not describe additional authentication methods or permissions. Paying for a shipment generates a label, while draft creation does not take payment. Label voiding is described for unused labels. The documented examples use ZIP codes, package dimensions, weight, carrier selection, and optional insurance choices, but the exact API validation rules are not specified. Store examples mention Shopify, while the available store tool is described generally as listing connected e-commerce stores.

_Full upstream README: https://allmcps.com/mcp/shipsaving/readme_

