MCP server: One MCP server.

ProShip Thailand Post

@proshipRun by its publisher: served from their own domain, namespace checked by the registry.MCP server · External

Create Thailand Post shipments, print labels, and track parcels in Thailand via ProShip.

Shipping & parcelsv1.0.1MITJavaScript
Freeno charge per call

One address for any MCP client. No sign-in needed on this server.

What it does

5 read3 act3 other

Grouped by tool name. At most: moves money, runs code or commands, deletes data, or sends messages for you.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Tools

11 · grouped by tool name · checked 26 Sep 2026

Read · 5Look things up

  • get_order_statuses
  • list_shops
  • list_orders
  • get_order
  • check_duplicate

Act · 3Change something

  • create_order
  • update_order_status
  • cancel_order

Other · 3Neither hinted nor named

  • track_parcel
  • signup
  • print_label
Try it in the Inspector
README1 min read

proship-mcp

Stateless MCP (Model Context Protocol) server that lets any AI agent create Thailand Post shipments, print labels, and track parcels through ProShip.

  • Endpoint: POST https://mcp.proship.me/mcp (JSON-RPC 2.0, application/json)
  • Docs: open https://mcp.proship.me/mcp in a browser — the docs page is generated from the live tool registry
  • Auth: Authorization: Bearer <ProShip API token>, passed through verbatim to api.proship.me. Nothing is stored server-side. New users can call the public signup tool to get a token.

Tools

Public: track_parcel, get_order_statuses, signup. Authenticated: list_shops, create_order, list_orders, get_order, update_order_status, cancel_order, check_duplicate, print_label.

The browser docs page at /mcp is the canonical, always-current tool reference.

Run

bash
npm install
npm start          # listens on PORT (default 3000)
npm test           # node:test suite, upstream fully mocked

Environment

VarPurposeDefault
PORTlisten port3000
PUBLIC_URLabsolute base used in label URLs and docshttps://mcp.proship.me
PROSHIP_API_BASEupstream API basehttps://api.proship.me
PROSHIP_UTRACK_TOKENoptional server-side token enabling unauthenticated track_parcelunset
PROSHIP_SYNTH_EMAIL_DOMAINdomain for synthesized signup emailsproship.me

Deploy

Fly.io app proship-mcp (region sin):

bash
fly deploy            # add --depot=false if the Depot builder fails

Notes

  • Order ids are pipe-suffixed (order-xxx|123). GET/PUT/DELETE strip the suffix internally; print_label requires the full id. Always pass the full id between tools.
  • Weights are grams. Status codes use the Thai pipeline (get_order_statuses); code 6 means out for delivery despite upstream labeling it "ERROR".
  • The only server state is a 10-minute in-memory cache for label PDFs so print_label can return a URL.

Similar modules

Browse Shipping & parcels