Back to Browse

Proship MCP Server

Developer ToolsUse Caution4.5MCP RegistryLocalRemote
Free

Server data from the Official MCP Registry

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

About

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

Remote endpoints: streamable-http: https://mcp.proship.me/mcp

Security Report

4.5
Use Caution4.5High Risk

A well-structured MCP server for Thailand Post shipping with proper authentication architecture and reasonable permission scope. The server passes tokens through to upstream APIs without storing them, and includes rate-limiting on public endpoints. However, there are moderate concerns around Host header validation (potential for subdomain confusion), webhook notification without verification, and limited input validation on some address fields that could lead to upstream API errors or abuse. Supply chain analysis found 4 known vulnerabilities in dependencies (0 critical, 2 high severity).

4 files analyzed · 11 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

process_memory

Check that this permission is expected for this type of plugin.

How to Install & Connect

Available as Local & Remote

This plugin can run on your machine or connect to a hosted endpoint. during install.

Documentation

View on GitHub

From the project's GitHub README.

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

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):

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.

Reviews

No reviews yet

Be the first to review this server!