restore_order_from_hold
Restores a held order in ShipStation using the specified order ID, enabling its processing and fulfillment via the ShipStation API MCP Server.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| orderId | Yes | Order ID to restore |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"orderId": {
"description": "Order ID to restore",
"type": "number"
}
},
"required": [
"orderId"
],
"type": "object"
}
Implementation Reference
- src/tools/order-tools.js:171-182 (handler)The handler function that executes the tool logic: calls the ShipStation client to restore the order from hold and returns the JSON result or error message.handler: async ({ orderId }) => { try { const result = await shipStationClient.restoreOrderFromHold({ orderId }); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] }; } catch (error) { return { content: [{ type: "text", text: error.message }], isError: true }; }
- src/tools/order-tools.js:168-170 (schema)Zod schema defining the required input parameter: orderId (number).schema: { orderId: z.number().describe("Order ID to restore") },
- src/api-client.js:76-78 (helper)Helper method in ShipStationClient that makes the POST request to the ShipStation API endpoint /orders/restorefromhold.async restoreOrderFromHold(data) { return this.request('POST', '/orders/restorefromhold', data); }
- src/server.js:174-191 (registration)Registration of all tools, including the restore_order_from_hold tool from orderTools, using the MCP server's tool() method.[ ...orderTools, ...shipmentTools, ...carrierTools, ...warehouseTools, ...productTools, ...customerTools, ...storeTools, ...webhookTools, ...fulfillmentTools ].forEach(tool => { server.tool( tool.name, tool.schema, tool.handler, { description: tool.description } ); });