
Packing Slip Cartons Shipment Weights
io.github.theluckystrikePublished by GitHub account theluckystrikev0.22.8Updated Oct 24, 2026
Packing slips with no prices: what is in each carton, gross and chargeable weight, lines short.
Overview
Local MCP server that builds price-free packing slips: cartons, packed lines, shortfalls and chargeable weights for a shipment.
- What you can do
- Create and manage packing lists: open a list against an order, declare ordered lines, list and show lists, change status, delete drafts.
- Add cartons with tare weight and outside dimensions, then pack or unpack item quantities into them.
- Report weights per carton and per shipment: tare, net, gross, volume, volumetric and chargeable weight against a chosen divisor.
- Compare ordered against packed to show short, complete, over-packed and off-order lines.
- Produce the packing slip as text, and on Pro write it to a file path.
- When to use it
- Useful when packing a shipment and needing to know what is in which box, what is still to pack, and what the courier will bill by chargeable weight. Suited to warehouse or fulfilment work where the document travels inside the box and must not show prices.
- Requirements
- Runs as a local process on the desktop, installed from the .mcpb package or built from source; the npm package is not yet published. No account, API key or network access. An optional Pro license key in MCP_LICENSE_KEY unlocks unlimited open lists and writing the slip to a file.
Installation
In SourceWeft
- Open Packing Slip Cartons Shipment Weights in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
mcp-packing-list
[theluckystrike/mcp-packing-list MCP server]
In the official MCP Registry (io.github.theluckystrike/packing-list).
The packing slip for a shipment, and the answer to the only two questions anybody asks
while packing one: what is in which box, and what is still to pack. A packing list is
raised against an order you name, the lines that order says should ship are declared on
it, cartons are added with a tare weight and their outside dimensions, and goods go into
cartons one call at a time. packing_shortfall then reports every line as short, complete,
over-packed, or packed and not on the order at all. carton_report gives the tare, net,
gross, volume, volumetric and chargeable weight per carton and for the shipment.
That is not a simplification, it is what the document is
for: it travels inside the box, and the consignee's warehouse is not the party that sees
what the goods cost. The invoice against the same order is a different document and lives
in @theluckystrike/mcp-invoice. There is no money arithmetic in this server at all, and a
test asserts there is not.
Mass is in whole grams everywhere and dimensions in whole centimetres, for the same reason money is in minor units: a kilogram carried as a float accumulates error over a hundred lines and then disagrees with the carrier's scale.
Nothing derived is stored. A record holds its cartons, its declared order lines and its packed lines; every weight and the whole shortfall are computed on the call. A stored gross weight is a second copy of what the lines already say, and it is the copy that gets believed after somebody unpacks a line.
The chargeable weight, which is the number that costs money
Couriers bill the greater of what a box weighs and what its volume is worth. The volumetric
weight is length x width x height / divisor, in centimetres, and the divisor is a tariff
term: 5000 cm3/kg is the courier air default, 6000 the older IATA air figure, 4000 appears
on some road tariffs. It is a parameter on every tool that reports it and never a constant
inside a formula, because a chargeable weight computed against the wrong divisor is a
carrier invoice nobody catches until the account is reconciled.
Two refusals matter here and both are deliberate:
- A carton with only two of its three dimensions is refused outright. Two of three cannot make a volume, and a partially measured box would drop silently out of the shipment total.
- If any carton has no dimensions at all, the shipment's volumetric and chargeable totals
come back as
null, never as a total that quietly skipped three boxes.
Install
One-click (.mcpb): download packing-list.mcpb from the latest release and double-click
it in Claude Desktop: https://github.com/theluckystrike/mcp-servers/releases/latest
npm publish for @theluckystrike/mcp-packing-list is pending, so the npx line below
returns 404 today. Build from source in the meantime; see llms-install.md.
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or
%APPDATA%\Claude\claude_desktop_config.json (Windows):
Claude Code
Cursor
~/.cursor/mcp.json (global) or .cursor/mcp.json (project), same entry as Claude Desktop.
Tools
There is also a resource, packinglist://contract, carrying the status machine, the weight
basis, what each shortfall state means, the free-tier limits and the one directory this
server writes; and a prompt, pack_the_shipment, that walks the whole job in order.
Free vs Pro
The cap is on shipments in flight, not on knowing what is in a box. Marking a list shipped or cancelling it frees its slot, and so does deleting a draft, so a free user can always get back under the limit without a key.
Get Pro: https://mcp.zovo.one/buy/packing-list (one-time), or all servers for one price at https://mcp.zovo.one/buy/bundle
Privacy
All data stays local, in
${XDG_DATA_HOME:-~/.local/share}/mcp-servers/packing-list/. There is no network call
anywhere in this server, no API key, and no account. The only file it reads that it does not
own is the shared business profile, for the name and address at the top of the slip, and it
never writes to it.
Built by theluckystrike. Support: [email protected]
Use these docs as an MCP server
Any MCP client (Claude, Cursor, Windsurf, VS Code) can read this repository's documentation directly via GitMCP - no install:
- Docs MCP URL: https://gitmcp.io/theluckystrike/mcp-packing-list
Source: servers/packing-list/README.md at commit 6535b33
Tools
0Version history
3- v0.22.8LatestOct 14, 2026
- v0.22.3Sep 23, 2026
- v0.21.0Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts