What you can do with ShipStation

Built for

Ecommerce Operations Managers, Fulfillment Leads, 3PL Coordinators, DTC Brand Operators

Example workflows

Carrier connectivity check

Confirms live carrier setup before rate or label work.

Try this

Which carriers are connected in our ShipStation account? List each carrier name and id.

Shipment backlog snapshot

Turns Monday standup into a plain-language shipping queue brief.

Try this

How many open shipments do we have in ShipStation right now? Summarize totals and call out anything waiting on labels.

Label and batch counts

Quick finance and ops check without exporting CSVs.

Try this

Do we have any purchased labels or label batches in ShipStation this week? Give me counts only.

Create a sandbox shipment

Validates write access and address requirements before production cutover.

Try this

Create a test outbound shipment in our ShipStation sandbox from Austin TX to San Jose CA — one pound package. Use external id mcp-smoke-check.

Context to know first

What can AI agents do with ShipStation?

Agents can list or fetch carriers, shipments, labels, fulfillments, products, inventory, purchase orders, suppliers, warehouses, tags, batches, manifests, pickups, and account settings. They can also create and update shipments, purchase and void labels, adjust inventory, manage webhooks, and run other write workflows your API key allows.

How do I connect ShipStation on MCPBundles?

Create an API key in the ShipEngine dashboard under API Keys, then paste it into MCPBundles when you connect ShipStation. One key is all you need — MCPBundles keeps it secure after setup.

Can I test with a sandbox account first?

Yes. ShipEngine sandbox keys start with TEST_ and are safe for full CRUD exploration — create shipments, tags, webhooks, and batches without touching production orders.

Related editorial

ShipStation Shipping Workflows with AI

How AI agents can check connected carriers, review shipments and labels, and audit inventory from your ShipStation account.

Read article

AI Skill
SKILL.md

Domain knowledge for ShipStation — workflow patterns, data models, and gotchas for your AI agent.

ShipStation (API v2)

ShipStation (formerly ShipEngine API) uses a single API key in the API-Key header against https://api.shipstation.com/v2. Sandbox keys start with TEST_. The official Postman reference collection mirrors these folders.

Data Model

  • Carriers — connected shipping providers with nested services, package types, and options.
  • Shipments — core object for rates, labels, tags, and fulfillment (replaces legacy v1 orders).
  • Labels — purchased labels with tracking, void, and refund status.
  • Fulfillments — mark shipments shipped and notify channels.
  • Products — SKUs used on shipment line items.
  • Inventory — stock levels, inventory warehouses, and bin locations.
  • Purchase orders / Suppliers — inbound replenishment.
  • Warehouses — ship-from locations for rating and manifests.
  • Batches / Manifests / Pickups — bulk label processing and carrier handoff.
  • Tags / Webhooks — workflow labels and event subscriptions.

Workflows

  1. Connectivity check: list connected carriers, then fetch services/packages/options for a carrier id from that list.
  2. Outbound shipping: create or update shipments, quote rates, purchase labels, tag shipments, and cancel when needed.
  3. Bulk processing: create label batches, add shipments, and review batch errors after processing.
  4. Inventory & replenishment: adjust stock, manage inventory warehouses, purchase orders, suppliers, and totes.
  5. Account automation: configure tags, webhooks, custom packages, warehouses, manifests, and carrier pickups.

Gotchas

  • API v2 only — legacy v1 Basic auth on ssapi.shipstation.com is not used.
  • Single API key — no OAuth and no API secret.
  • SandboxTEST_ keys hit sandbox carriers; safe for create/update/delete smoke tests.
  • Pagination — list endpoints accept page (1-based) and page_size (max 100).
  • Nested carrier reads — services, packages, and options require carrier_id from the carriers list.
  • Write payloads — upsert tools accept a data object matching ShipStation docs; shipment addresses need phone on ship_from/ship_to.
  • Tag deletes — account tags delete by tag name, not tag_id.

Tools in this Server (59)

Shipstation Add Batch Shipments

Add shipments to an existing label batch (POST /batches/{batch_id}/add). All shipments must share the same warehouse_id; each shipment in data needs w...

Shipstation Cancel Shipment

Cancel a shipment by shipment_id (PUT /shipments/{shipment_id}/cancel).

Shipstation Delete Batch

Delete a label batch by batch_id.

Shipstation Delete Inventory Warehouse

Delete an inventory warehouse by inventory_warehouse_id.

Shipstation Delete Package

Delete a custom package type by package_id.

Shipstation Delete Pickup

Cancel a scheduled carrier pickup by pickup_id.

Shipstation Delete Tag

Delete an account-level tag by its name.

Shipstation Delete Tote

Delete a warehouse tote by tote_id.

Shipstation Delete Warehouse

Delete a ship-from warehouse by warehouse_id.

Shipstation Delete Webhook

Delete a webhook subscription by webhook_id.

Shipstation Estimate Rates

Estimate shipping rates without creating a shipment (POST /rates/estimate). Uses a flat address shape — not ship_to/ship_from objects. Required fields...

Shipstation Get Account Settings

Retrieve account-level settings for the connected ShipStation API account.

Shipstation Get Batch Errors

List errors for a batch after bulk label processing. Use when batch status indicates partial failures.

Shipstation Get Batches

List label batches or fetch one by batch_id / external_batch_id. Batches bulk process label purchases.

Shipstation Get Carrier Options

List advanced shipping options supported by a carrier (signature confirmation, dry ice, etc.).

Shipstation Get Carrier Packages

List package types supported by a carrier (flat rate box, envelope, etc.). Distinct from custom account package types in shipstation_get_packages.

Shipstation Get Carriers

List carriers connected to the ShipStation account or fetch one carrier by carrier_id. Returns carrier codes, friendly names, balances, and nested ser...

Shipstation Get Carrier Services

List shipping services available for a carrier. Use after shipstation_get_carriers when you need service_code values for rating or label purchase.

Shipstation Get Fulfillments

List fulfillments that mark shipments as shipped with tracking. Fulfillments trigger marketplace and customer notifications.

Shipstation Get Inventory

List SKU inventory levels across warehouses and locations.

Shipstation Get Inventory Locations

List inventory locations within warehouses or fetch one by inventory_location_id.

Shipstation Get Inventory Warehouses

List inventory warehouses or fetch one by inventory_warehouse_id. These back the inventory module and differ from ship-from warehouses.

Shipstation Get Labels

List purchased labels or fetch one by label_id / external_shipment_id. Labels include tracking numbers, carrier, void status, and refund state.

Shipstation Get Label Tracking

Retrieve tracking events for a purchased label by label_id.

Shipstation Get Manifests

List carrier manifests or fetch one by manifest_id. Manifests consolidate a day's shipments for carrier pickup.

Shipstation Get Packages

List custom package types defined on the account or fetch one by package_id. These differ from carrier-native package types in shipstation_get_carrier...

Shipstation Get Pickups

List scheduled carrier pickups or fetch one by pickup_id.

Shipstation Get Products

List products (SKUs) configured in ShipStation for shipment line items.

Shipstation Get Purchase Orders

List supplier purchase orders or fetch one by purchase_order_id for inbound inventory replenishment.

Shipstation Get Rate

Fetch a previously quoted rate by rate_id. Use the rate id from a POST /rates response when purchasing a label with POST /labels/rates/{rate_id}.

Shipstation Get Shipment Rates

Retrieve rates previously quoted for a shipment id. For fresh quotes use the rates POST endpoint (not exposed here).

Shipstation Get Shipments

List shipments or fetch one by shipment_id / external_shipment_id. Shipments are the core v2 object for rates, labels, and fulfillment.

Shipstation Get Shipment Tags

List tags applied to a specific shipment.

Shipstation Get Suppliers

List suppliers or fetch one by supplier_id linked to purchase orders.

Shipstation Get Tags

List shipment tags configured on the account.

Shipstation Get Totes

List warehouse totes (pick bins) or fetch one by tote_id.

Shipstation Get Tracking

Look up tracking events by tracking_number. Provide carrier_code or carrier_id to disambiguate carriers.

Shipstation Get Users

List users on the ShipStation account.

Shipstation Get Warehouses

List ship-from warehouses or fetch one by warehouse_id. Used for rating, manifests, and label origin addresses.

Shipstation Get Webhooks

List account webhooks or fetch one by webhook_id. Webhooks push batch, tracking, and shipment lifecycle events.

Shipstation Tag Shipment

Apply a tag to a shipment (POST /shipments/{shipment_id}/tags/{tag_name}). Creates the tag if it does not exist.

Shipstation Untag Shipment

Remove a tag from a shipment (DELETE /shipments/{shipment_id}/tags/{tag_name}).

Shipstation Upsert Batch

Create or update a label batch. Omit batch_id to POST; pass batch_id to PUT /batches/{batch_id}.

Shipstation Upsert Fulfillments

Create fulfillments that mark shipments shipped with tracking and notify marketplaces (POST /fulfillments).

Shipstation Upsert Inventory

Adjust SKU inventory levels (POST /inventory).

Shipstation Upsert Inventory Warehouse

Create or update an inventory warehouse. Omit inventory_warehouse_id to POST; pass it to PUT /inventory_warehouses/{inventory_warehouse_id}.

Shipstation Upsert Labels

Purchase shipping labels. Pass purchase_path for shortcut endpoints like rates/{rate_id} or shipment/{shipment_id}; omit purchase_path for POST /label...

Shipstation Upsert Manifests

Create a carrier manifest for end-of-day shipment handoff (POST /manifests).

Shipstation Upsert Package

Create or update a custom package type. Omit package_id to POST; pass package_id to PUT /packages/{package_id}.

Shipstation Upsert Pickups

Schedule a carrier package pickup (POST /pickups).

Shipstation Upsert Purchase Orders

Create or update purchase orders. Omit purchase_order_id to POST; pass purchase_order_id to PUT, optionally with action_path for status, shipping_deta...

Shipstation Upsert Rates

Request fresh shipping rates for an existing shipment (POST /rates). Pass shipment_id plus rate_options.carrier_ids (for example ["se-387100"]) — rate...

Shipstation Upsert Shipments

Create or update shipments. Omit shipment_id to POST {"shipments": [...]}; include phone on ship_to and ship_from. Pass shipment_id to PUT — ShipStati...

Shipstation Upsert Suppliers

Create or update a supplier. Omit supplier_id to POST; pass supplier_id to PUT /suppliers/{supplier_id}. Create requires supplier_name in data.

Shipstation Upsert Tag

Create an account-level shipment tag by name. Tags can be applied to shipments with shipstation_tag_shipment.

Shipstation Upsert Totes

Create or update warehouse totes. Omit tote_id to POST; pass tote_id to PUT. Set action_path to quantities for bulk quantity updates.

Shipstation Upsert Warehouse

Create or update a ship-from warehouse. Omit warehouse_id to POST; pass warehouse_id to PUT /warehouses/{warehouse_id}.

Shipstation Upsert Webhook

Create or update a ShipStation webhook. Omit webhook_id to POST a new subscription; pass webhook_id to PUT an update.

Shipstation Void Label

Void a purchased label by label_id (PUT /labels/{label_id}/void). Sandbox may return approved:false with label_not_found_within_void_period for some l...

Frequently Asked Questions

What is the ShipStation MCP server?

ShipStation is shipping software for e-commerce sellers. Manage carriers, shipments, labels, inventory, purchase orders, and fulfillment through the ShipStation API v2. It provides 59 tools that AI agents can use through the Model Context Protocol (MCP).

How do I connect ShipStation to my AI agent?

Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/shipstation. Authentication is handled automatically.

How many tools does ShipStation provide?

ShipStation provides 59 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.

What authentication does ShipStation require?

ShipStation uses API Key. ShipStation requires credentials. Connect via MCPBundles and authentication is handled automatically.

What can AI agents do with ShipStation?

Agents can list or fetch carriers, shipments, labels, fulfillments, products, inventory, purchase orders, suppliers, warehouses, tags, batches, manifests, pickups, and account settings. They can also create and update shipments, purchase and void labels, adjust inventory, manage webhooks, and run other write workflows your API key allows.

How do I connect ShipStation on MCPBundles?

Create an API key in the ShipEngine dashboard under API Keys, then paste it into MCPBundles when you connect ShipStation. One key is all you need — MCPBundles keeps it secure after setup.

Can I test with a sandbox account first?

Yes. ShipEngine sandbox keys start with TEST_ and are safe for full CRUD exploration — create shipments, tags, webhooks, and batches without touching production orders.

How do I get a ShipStation account to use with MCPBundles?

Sign up for ShipStation first if you don't already have a store connected. MCPBundles works with ShipStation accounts you already own — it does not replace your shipping subscription.

Setup Instructions

Connect ShipStation to any MCP client in minutes

MCP URL
https://mcp.mcpbundles.com/bundle/shipstation

One-click install:

The link prefills the Add custom connector dialog — you still review the values and click Add, then Connect to complete OAuth.

Or add manually

  1. Open claude.ai → Settings → Connectors.
  2. Click the + button and choose Add custom connector.
  3. Set Name to ShipStation and paste the MCP URL into Remote MCP server URL.
  4. Click Add. ShipStation will appear under Not connected — select it and click Connect to complete OAuth.
Name: ShipStation
Remote MCP server URL: https://mcp.mcpbundles.com/bundle/shipstation
Authentication: OAuth

Custom connectors at claude.ai require a paid Claude plan (Pro, Max, Team, or Enterprise).

Ready to use ShipStation?

Sign in to connect your credentials and start running tools from the chat.

ShipStation MCP Server & Skill — 59 Tools