Create Thailand Post shipments, print labels, and track parcels in Thailand via ProShip.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Delete/cancel an order by id.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Delete/cancel an order by id.
| Argument | Type | Description |
|---|---|---|
| order_id* | string |
{
"type": "object",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string"
}
}
}Check whether a customer phone number already has a recent order (duplicate-shipment guard).
| Argument | Type | Description |
|---|---|---|
| phone* | string | Customer phone number |
{
"type": "object",
"required": [
"phone"
],
"properties": {
"phone": {
"type": "string",
"description": "Customer phone number"
}
}
}Create a shipment order. Defaults to Thailand Post EPS (thaipost0). Weight is in GRAMS. Returns the order_id — it contains a pipe suffix (order-xxx|123); always pass the FULL id to other tools. Optional cod_amount enables cash-on-delivery.
| Argument | Type | Description |
|---|---|---|
| user | string | Optional: ProShip username. Normally decoded from your token automatically. |
| ref_no | string | Optional: your own order reference |
| weight* | number | Parcel weight in grams |
| remarks | string | |
| shop_id* | string | Your shop id (see list_shops) |
| customer* | object | |
| products | array | Optional line items |
| cod_amount | number | Optional: cash-on-delivery amount (THB) |
| shipping_method | string | Default thaipost0 (EPS). thaipost requires a Thailand Post contract on your account. |
Get one order by id (full pipe-suffixed id is fine). Returns status with Thai label and tracking number.
| Argument | Type | Description |
|---|---|---|
| order_id* | string |
{
"type": "object",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string"
}
}
}Reference data: the ProShip order status pipeline. Returns every status code with its Thai label and English meaning. Use these codes with list_orders and update_order_status.
No arguments.
{
"type": "object",
"properties": {}
}List orders on YOUR account. Optional numeric status filter (see get_order_statuses). Paginated.
| Argument | Type | Description |
|---|---|---|
| page | number | Default 1 |
| status | number | Optional status code filter |
| per_page | number | Default 50, max 100 |
{
"type": "object",
"properties": {
"page": {
"type": "number",
"description": "Default 1"
},
"status": {
"type": "number",
"description": "Optional status code filter"
},
"per_page": {
"type": "number",
"description": "Default 50, max 100"
}
}
}List the shops on YOUR ProShip account. Use the shop_id with create_order.
No arguments.
{
"type": "object",
"properties": {}
}Generate the shipping label PDF for one or more orders. REQUIRES the FULL pipe-suffixed order ids (order-xxx|123) — stripped ids are rejected upstream. Returns a temporary URL (valid ~10 minutes) where the PDF can be downloaded.
| Argument | Type | Description |
|---|---|---|
| size | string | Label size, default "normal" |
| printer | string | Label format, default "proship" |
| order_ids* | array | FULL pipe-suffixed order ids |
{
"type": "object",
"required": [
"order_ids"
],
"properties": {
"size": {
"type": "string",
"description": "Label size, default \"normal\""
},
"printer": {
"enum": [
"proship",
"proship_v3p",
"paperang"
],
"type": "string",
"description": "Label format, default \"proship\""
},
"order_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "FULL pipe-suffixed order ids"
}
}
}Creates a real ProShip account and shop, ready for Thailand Post EPS (thaipost0) shipping. The response contains your API token, user, and shop_id — SHOWN ONLY ONCE. Save the token into your MCP client's Authorization header. A full thaipost contract additionally requires a Thailand Post account arranged with ProShip support (multi-day human process).
| Argument | Type | Description |
|---|---|---|
| phone* | string | Thai mobile number for the shop, e.g. 0812345678 |
| address* | object | Thai address, structured |
| shop_name* | string | Name of your shop (prints on labels) |
| display_name | string | Optional account display name (defaults to shop_name) |
{
"type": "object",
"required": [
"shop_name",
"phone",
"address"
],
"properties": {
"phone": {
"type": "string",
"description": "Thai mobile number for the shop, e.g. 0812345678"
},
"address": {
"type": "object",
"required": [
"address",
"sub_district",
"district",
"province",
"zipcode"
],
"properties": {
"address": {
"type": "string",
"description": "Street address (house no, street, etc.)"
},
"zipcode": {
"type": "string",
"description": "5-digit Thai postal code"
},
"district": {
"type": "string",
"description": "อำเภอ/เขต"
},
"province": {
"type": "string",
"description": "จังหวัด"
},
"sub_district": {
"type": "string",
"description": "ตำบล/แขวง"
}
},
"description": "Thai address, structured"
},
"shop_name": {
"type": "string",
"description": "Name of your shop (prints on labels)"
},
"display_name": {
"type": "string",
"description": "Optional account display name (defaults to shop_name)"
}
}
}Track any parcel by tracking number (Thailand Post and other Thai carriers). Returns current status with Thai label plus the event history. Works without auth if the server has a tracking token configured; otherwise pass your Bearer token.
| Argument | Type | Description |
|---|---|---|
| tracking_no* | string | Carrier tracking number, e.g. TH0139... |
{
"type": "object",
"required": [
"tracking_no"
],
"properties": {
"tracking_no": {
"type": "string",
"description": "Carrier tracking number, e.g. TH0139..."
}
}
}Set an order status by numeric code (see get_order_statuses).
| Argument | Type | Description |
|---|---|---|
| status* | number | Status code, e.g. 5 = cancelled by seller |
| order_id* | string |
{
"type": "object",
"required": [
"order_id",
"status"
],
"properties": {
"status": {
"type": "number",
"description": "Status code, e.g. 5 = cancelled by seller"
},
"order_id": {
"type": "string"
}
}
}{
"type": "object",
"required": [
"shop_id",
"weight",
"customer"
],
"properties": {
"user": {
"type": "string",
"description": "Optional: ProShip username. Normally decoded from your token automatically."
},
"ref_no": {
"type": "string",
"description": "Optional: your own order reference"
},
"weight": {
"type": "number",
"description": "Parcel weight in grams"
},
"remarks": {
"type": "string"
},
"shop_id": {
"type": "string",
"description": "Your shop id (see list_shops)"
},
"customer": {
"type": "object",
"required": [
"name",
"phone",
"address"
],
"properties": {
"name": {
"type": "string"
},
"phone": {
"type": "string",
"description": "Thai mobile, e.g. 0812345678"
},
"address": {
"type": "object",
"required": [
"address",
"sub_district",
"district",
"province",
"zipcode"
],
"properties": {
"address": {
"type": "string",
"description": "Street address (house no, street, etc.)"
},
"zipcode": {
"type": "string",
"description": "5-digit Thai postal code"
},
"district": {
"type": "string",
"description": "อำเภอ/เขต"
},
"province": {
"type": "string",
"description": "จังหวัด"
},
"sub_district": {
"type": "string",
"description": "ตำบล/แขวง"
}
},
"description": "Thai address, structured"
}
}
},
"products": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"qty"
],
"properties": {
"qty": {
"type": "number"
},
"name": {
"type": "string"
},
"price": {
"type": "number"
}
}
},
"description": "Optional line items"
},
"cod_amount": {
"type": "number",
"description": "Optional: cash-on-delivery amount (THB)"
},
"shipping_method": {
"enum": [
"thaipost0",
"thaipost"
],
"type": "string",
"description": "Default thaipost0 (EPS). thaipost requires a Thailand Post contract on your account."
}
}
}