mark_order_as_shipped
Update order status to shipped in ShipStation by providing carrier details, ship date, and tracking number for shipment confirmation.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| orderId | Yes | Order ID to mark as shipped | |
| carrierCode | Yes | Carrier code | |
| shipDate | Yes | Ship date (YYYY-MM-DD) | |
| trackingNumber | Yes | Tracking number |
Implementation Reference
- src/tools/order-tools.js:84-101 (handler)The MCP tool handler for 'mark_order_as_shipped'. Destructures input params, calls shipStationClient.markOrderAsShipped, formats result as MCP content or error.handler: async ({ orderId, carrierCode, shipDate, trackingNumber }) => { try { const result = await shipStationClient.markOrderAsShipped({ orderId, carrierCode, shipDate, trackingNumber }); 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:78-83 (schema)Zod input schema defining required parameters for the mark_order_as_shipped tool.schema: { orderId: z.number().describe("Order ID to mark as shipped"), carrierCode: z.string().describe("Carrier code"), shipDate: z.string().describe("Ship date (YYYY-MM-DD)"), trackingNumber: z.string().describe("Tracking number") },
- src/server.js:184-191 (registration)Registration loop in MCP server that registers the mark_order_as_shipped tool (included via ...orderTools) using server.tool().].forEach(tool => { server.tool( tool.name, tool.schema, tool.handler, { description: tool.description } ); });
- src/api-client.js:60-62 (helper)ShipStationClient helper method that performs the actual API POST request to mark an order as shipped.async markOrderAsShipped(data) { return this.request('POST', '/orders/markasshipped', data); }