ShippingEasy MCP by usefulapi

List stores, search and get orders, update order status and cancel orders in ShippingEasy.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
82%
Naming quality
73%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'shippingeasy_search_store_orders' name length outside 3-30 rangein shippingeasy_search_store_orders
  • LOWTool 'shippingeasy_update_order_status' name length outside 3-30 rangein shippingeasy_update_order_status

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,304Tokens (tool definitions)
~1.8 KBTypical response size
Moderate attention impact (1.02% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "shippingeasy": {
      "url": "https://shippingeasy.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://shippingeasy.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢shippingeasy_list_stores

List all stores of this ShippingEasy account, with the store API key of each store. Use a store API key in the store tools. Uses GET /api/stores.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢shippingeasy_search_orders(page, per_page, last_updated_at, status, includes, ...)

Search orders across all stores of this account. Filter by last update time, status, order number or tag. Uses GET /api/orders.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page of results to return (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page (1 to 200).",
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    },
    "last_updated_at": {
      "description": "Only orders updated at or after this ISO 8601 time, e.g. 2026-10-25T00:00:00.000-00:00. Default one week ago; at most 3 months ago.",
      "type": "string",
      "minLength": 1
    },
    "status": {
      "description": "Only orders with this ShippingEasy status.",
      "type": "string",
      "enum": [
        "shipped",
        "cleared",
        "pending_shipment",
        "ready_for_shipment"
      ]
    },
    "includes": {
      "description": "Use products to add product details to each order.",
      "type": "string",
      "const": "products"
    },
    "order_number": {
      "description": "The external order identifier (the e-commerce order number) to find.",
      "type": "string",
      "minLength": 1
    },
    "tags": {
      "description": "Only orders with this tag.",
      "type": "string",
      "minLength": 1
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢shippingeasy_search_store_orders(store_api_key, page, per_page, last_updated_at, status, ...)

Search orders of one store, by its store API key. Same filters as shippingeasy_search_orders. Uses GET /api/stores/{store_api_key}/orders.

Input Schema

{
  "type": "object",
  "properties": {
    "store_api_key": {
      "type": "string",
      "minLength": 1,
      "description": "The store API key, from shippingeasy_list_stores (Settings > Stores & Orders)."
    },
    "page": {
      "description": "Page of results to return (default 1).",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "per_page": {
      "description": "Results per page (1 to 200).",
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    },
    "last_updated_at": {
      "description": "Only orders updated at or after this ISO 8601 time, e.g. 2026-10-25T00:00:00.000-00:00. Default one week ago; at most 3 months ago.",
      "type": "string",
      "minLength": 1
    },
    "status": {
      "description": "Only orders with this ShippingEasy status.",
      "type": "string",
      "enum": [
        "shipped",
        "cleared",
        "pending_shipment",
        "ready_for_shipment"
      ]
    },
    "includes": {
      "description": "Use products to add product details to each order.",
      "type": "string",
      "const": "products"
    },
    "order_number": {
      "description": "The external order identifier (the e-commerce order number) to find.",
      "type": "string",
      "minLength": 1
    },
    "tags": {
      "description": "Only orders with this tag.",
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "store_api_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢shippingeasy_get_order(order_id)

Get one order by its ShippingEasy order id, with its recipients and line items. Uses GET /api/orders/{id}.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "anyOf": [
        {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        {
          "type": "string",
          "pattern": "^\\d+$"
        }
      ],
      "description": "The ShippingEasy order id (the id field in order results)."
    }
  },
  "required": [
    "order_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡shippingeasy_update_order_status(store_api_key, external_order_identifier, order_status)

Set the store order status of one order, by its external order identifier. Sets the Status shown in ShippingEasy. Uses PUT /api/stores/{store_api_key}/orders/{external_order_identifier}/status.

Input Schema

{
  "type": "object",
  "properties": {
    "store_api_key": {
      "type": "string",
      "minLength": 1,
      "description": "The store API key, from shippingeasy_list_stores (Settings > Stores & Orders)."
    },
    "external_order_identifier": {
      "type": "string",
      "minLength": 1,
      "description": "The e-commerce order number of the order (external_order_identifier)."
    },
    "order_status": {
      "type": "string",
      "enum": [
        "awaiting_payment",
        "awaiting_fulfillment",
        "awaiting_shipment",
        "partially_shipped"
      ],
      "description": "The new store order status."
    }
  },
  "required": [
    "store_api_key",
    "external_order_identifier",
    "order_status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴shippingeasy_cancel_order(store_api_key, order_id)

Cancel an order in ShippingEasy, so it is not shipped from there. Use it when the order was shipped or cancelled outside ShippingEasy. Uses POST /api/stores/{store_api_key}/orders/{order_id}/cancellations.

Input Schema

{
  "type": "object",
  "properties": {
    "store_api_key": {
      "type": "string",
      "minLength": 1,
      "description": "The store API key, from shippingeasy_list_stores (Settings > Stores & Orders)."
    },
    "order_id": {
      "anyOf": [
        {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        {
          "type": "string",
          "pattern": "^\\d+$"
        }
      ],
      "description": "The ShippingEasy order id (the id field in order results)."
    }
  },
  "required": [
    "store_api_key",
    "order_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools