关于 packing-list
为订单创建装箱单,记录各纸箱中的商品,并核对短装、超装及未列入订单的商品。它按箱和整票计算重量与体积重,适合需要核实发货内容及承运计费重量的业务。
主要功能
- 01按订单创建装箱单
- 02记录预期商品及箱内装载
- 03核对短装、超装和额外商品
- 04计算纸箱及货件重量
- 05计算体积重和计费重量
- 06记录承运商与追踪信息
适用场景
- 01核对订单商品是否全部装箱
- 02计算货件的承运计费重量
- 03生成随货装箱单
- 04留存已发货货件记录
MCP 相关
此 MCP 服务向 MCP 客户端提供装箱单、纸箱、装载明细、短装检查及重量报告工具,并提供流程资源和引导式提示词。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.zovo.one/mcp/packing-slipclaude mcp add --transport http theluckystrike-packing-list https://mcp.zovo.one/mcp/packing-slip{"mcpServers":{"theluckystrike-packing-list":{"type":"http","url":"https://mcp.zovo.one/mcp/packing-slip"}}}在 Cursor 中打开{"servers":{"theluckystrike-packing-list":{"type":"http","url":"https://mcp.zovo.one/mcp/packing-slip"}}}在 VS Code 中打开{"mcpServers":{"theluckystrike-packing-list":{"type":"http","url":"https://mcp.zovo.one/mcp/packing-slip"}}}{"mcpServers":{"theluckystrike-packing-list":{"serverUrl":"https://mcp.zovo.one/mcp/packing-slip"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://mcp.zovo.one/mcp/packing-slip需要授权工具
14| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| date | string | 否 | 创建清单的日期,格式为 YYYY-MM-DD。默认为今天 |
| note | string | 否 | |
| ship_to | string | 否 | 送货地址,将打印在单据上。省略则不显示 |
| consignee | string | 是 | 收货方,按订单中指定的名称填写 |
| reference | string | 是 | 对应此发货的订单,可按 ID 指定,例如 WO-2026-0001、INV-2026-0007 或 PO-4471 |
| duplicate_ok | boolean | 否 | 即使此参考号已有 OPEN 清单,也仍然创建。默认为 false |
| reference_kind | enum | 否 | 参考号的类型。若省略,则根据 ID 推断:WO- 表示工单,INV- 表示发票,Q- 表示报价单,否则视为普通订单quote | work_order | invoice | order |
详细介绍
mcp-packing-list
位于官方 MCP Registry(io.github.theluckystrike/packing-list)。
装运货物的装箱单,也是打包时人们只会问的两个问题的答案:每个箱子里装了什么,还有什么尚未打包。你可以为指定的订单创建装箱单,列出该订单要求发运的商品,添加带有皮重和外部尺寸的纸箱,然后每次调用将货物装入纸箱。packing_shortfall 会报告每一行是短装、齐套、超装,还是装入了订单之外的商品。carton_report 会提供每个纸箱及整批货物的皮重、净重、毛重、体积、体积重量和计费重量。
这并非简化处理,这正是这份单据的用途:它会随货物放在箱内,而收货人的仓库并不是查看货物成本的一方。同一订单的发票是另一份单据,由 @theluckystrike/mcp-invoice 提供。本服务完全不进行金额运算,并且有测试断言确实如此。
所有质量均以整克为单位,尺寸均以整厘米为单位,原因与金额使用最小货币单位相同:以浮点数表示的千克数经过一百行累积后会产生误差,最终与承运商的秤不一致。
不存储任何派生值。记录中保存纸箱、声明的订单行和已打包的商品行;每次调用时都会计算所有重量和完整的短装情况。存储毛重就等于重复保存商品行中已有的数据,而一旦有人拆出一行货物,最终被相信的往往就是这份副本。
计费重量:决定费用的数值
快递公司按箱子的实际重量和体积重量中较大的那个计费。体积重量按 length x width x height / divisor 计算,单位为厘米;divisor 是运费表中的参数:空运快递的默认值为 5000 cm3/kg,旧版 IATA 空运标准值为 6000,某些公路运输运费表则采用 4000。每个报告此数值的工具都将其作为参数,而不会将其设为公式中的常量,因为使用错误的除数计算出的计费重量,可能导致承运商账单直到对账时才被发现。
这里有两项重要且有意为之的拒绝处理:
- 如果纸箱只有三个尺寸中的两个,会直接拒绝。三个尺寸缺少一个就无法计算体积,而且只测量了部分尺寸的纸箱会悄无声息地从整批货物的总计中消失。
- 如果任何纸箱都没有尺寸,整批货物的体积重量和计费重量总计会返回
null,绝不会悄悄跳过三个纸箱后给出总计。
安装
一键安装(.mcpb):从最新版本下载 packing-list.mcpb,然后在 Claude Desktop 中双击:
https://github.com/theluckystrike/mcp-servers/releases/latest
@theluckystrike/mcp-packing-list 的 npm 发布尚未完成,因此下面的 npx 命令目前会返回 404。此期间请从源代码构建;参见 llms-install.md。
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或
%APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"packing-list": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-packing-list"]
}
}
}
Claude Code
claude mcp add packing-list -- npx -y @theluckystrike/mcp-packing-list
Cursor
~/.cursor/mcp.json(全局)或 .cursor/mcp.json(项目),使用与 Claude Desktop 相同的条目。
工具
| 工具 | 功能 |
|---|---|
packing_list_create | 为订单创建装箱单:参考编号、收货人、收货地址和日期 |
packing_expect | 声明一条订购明细,使短缺情况有据可依。不会从报价单、工单或发票存储中读取任何信息 |
carton_add | 添加一个纸箱:标签、以整克为单位的空箱重量,以及全部三个外部尺寸,或不填写任何尺寸 |
pack_item | 将某种商品的指定数量装入一个命名纸箱,并填写以整克为单位的单件重量 |
unpack_item | 根据类似 L01 的 ID 取出一条已装箱明细。删除该明细,而不是将数量归零 |
packing_list_show | 显示完整装箱单:纸箱及其内容物和重量、订购明细、短缺情况,以及是否已可发货 |
packing_list_list | 按最新优先列出装箱单,可按状态、订单参考编号或收货人筛选 |
carton_report | 按纸箱和整批货物显示皮重、净重、毛重、体积、体积重和计费重 |
packing_shortfall | 对比订购与已装箱内容:哪些短缺、哪些超量装箱、哪些不在订单中 |
packing_list_status | 状态可从 draft 变为 packed,再变为 shipped,也可取消。发货时会记录承运商和追踪信息,并冻结装箱单 |
packing_slip | 所有套餐均可将装箱单显示为文本。Pro 还会将其写入 out_path,保存为 .txt 文件 |
packing_list_delete | 永久删除装箱单。已发货的装箱单不能删除,因为它记录了发出的货物 |
license_status | 查看此安装所属的套餐以及密钥来源 |
license_activate | 为此服务保存 Pro 密钥 |
此外,还有一个资源 packinglist://contract,其中包含状态机、重量计算依据、各类短缺状态的含义、免费套餐限制,以及此服务写入的唯一目录;还有一个提示词 pack_the_shipment,按顺序引导完成整个流程。
免费版与 Pro 版
| 免费版 | Pro 版 | |
|---|---|---|
| 同时打开的装箱单数量 | 3 | 不限 |
| 纸箱、已装箱明细、订购明细 | 不限 | 不限 |
carton_report、packing_shortfall、packing_list_show | 是 | 是 |
| 以文本形式显示装箱单 | 是 | 是 |
将装箱单写入文件(使用 out_path) | 否 | 是 |
限制针对的是正在处理的货件数量,而不是可记录的箱内物品。将装箱单标记为已发货或取消后,该货件会释放一个名额;删除草稿也会释放名额,因此免费版用户无需密钥也能始终回到限制范围内。
购买 Pro: https://mcp.zovo.one/buy/packing-list(一次性付费),或以一个价格购买所有服务: https://mcp.zovo.one/buy/bundle
隐私
所有数据都保存在本地,路径为
${XDG_DATA_HOME:-~/.local/share}/mcp-servers/packing-list/。此服务不会进行任何网络调用,也不需要 API 密钥或账户。它读取的唯一非自有文件是共享业务资料,用于在装箱单顶部显示名称和地址,并且绝不会写入该文件。
由 theluckystrike 构建。支持:[email protected]
将这些文档用作 MCP 服务
任何 MCP 客户端(Claude、Cursor、Windsurf、VS Code)都可以通过 GitMCP 直接读取此代码库的文档,无需安装:
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。