# Shippit MCP by usefulapi (remote · shippit.usefulapi.io)

Get Shippit quotes, track and manage orders; create, label, book and cancel shipments on approval.

- Trust score: 61/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-25

## Components

- remote · `shippit.usefulapi.io`: 61/100 (this document), [markdown](https://verifymcp.io/servers/io-usefulapi-shippit/shippit.md), [page](https://verifymcp.io/servers/io-usefulapi-shippit/shippit)

## Channel facts

- Endpoint: `https://shippit.usefulapi.io/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.1.3`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-25.

- **Endpoint Security**: 78/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token.
  - HTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but the endpoint redirected instead of responding directly.
- **Schema Quality & AI Usability**: 77/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 2258 tokens (~188/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 92/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 75% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 13 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the Shippit MCP by usefulapi server?

Shippit MCP by usefulapi is a hosted endpoint at https://shippit.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http io-usefulapi-shippit 'https://shippit.usefulapi.io/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "io-usefulapi-shippit": {
      "url": "https://shippit.usefulapi.io/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "io-usefulapi-shippit": {
      "type": "http",
      "url": "https://shippit.usefulapi.io/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.io-usefulapi-shippit]
url = "https://shippit.usefulapi.io/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-usefulapi-shippit": {
      "type": "remote",
      "url": "https://shippit.usefulapi.io/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add io-usefulapi-shippit --url 'https://shippit.usefulapi.io/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  io-usefulapi-shippit:
    url: "https://shippit.usefulapi.io/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "io-usefulapi-shippit": {
      "Transport": "http",
      "Url": "https://shippit.usefulapi.io/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add io-usefulapi-shippit -t streamable-http -u 'https://shippit.usefulapi.io/mcp'
```

### Other

```json
{
  "mcpServers": {
    "io-usefulapi-shippit": {
      "type": "http",
      "url": "https://shippit.usefulapi.io/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-25 (score 61, 0)

- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 1.1.0 → 1.1.3

### 2026-10-24 (score 61)

First indexed and scored.

## MCP tools (12)

### `shippit_get_merchant` (~48 tokens)

Get merchant account

The Shippit merchant account behind this API key: store and company name, contact, preparation time, website and the home (pickup) address with country. GET /merchant.

### `shippit_get_operating_hours` (~54 tokens)

Get store operating hours

The store operating hours per weekday (open flag, start and end of the working day) that Shippit uses for pickup and delivery estimates. GET /merchants/settings/locations/operating_hours.

### `shippit_list_webhooks` (~63 tokens)

List webhooks

The tracking webhooks configured on the account (at most 6): url, the order states that trigger each, whether address or receiver details are hidden, enabled flag. Custom header values are masked by Shippit. GET /merchants/webhooks.

### `shippit_get_quotes` (~312 tokens)

Get shipping quotes

Ask the carriers enabled on the account for a price and delivery estimate to a destination, for given parcels. Nothing is booked and nothing is charged. Set return_all_quotes to see every carrier instead of only the cheapest or fastest. A 200 can hold per-carrier errors (success false) and a quote of 0 means that carrier cannot take the parcel. Dangerous goods cannot be quoted. POST /quotes.

Input parameters:

- `authority_to_leave` (string): Whether the parcel may be left unattended.
- `dropoff_address` (string): Street address (required for on-demand quotes).
- `dropoff_country_code` (string): Two-letter country code (default: the merchant's home country, usually AU).
- `dropoff_postcode` (string, required)
- `dropoff_state` (string): State. Australian orders use NSW, VIC, QLD, WA, SA, TAS, ACT or NT.
- `dropoff_suburb` (string, required)
- `dutiable_amount` (number): Declared customs value (required for international quotes).
- `features` (array): Carrier add-on services, e.g. white_glove.
- `order_date` (string): Delivery date, yyyy-mm-dd (required for priority quotes).
- `parcels` (array, required): The parcels to quote.
- `product_currency` (string)
- `return_all_quotes` (boolean): Return the quotes of all carriers (default: only the cheapest or fastest).
- `service_levels` (array): Only quote these service levels.

### `shippit_estimate_delivery_dates` (~151 tokens)

Estimate delivery dates

Estimated delivery window (earliest, latest, confidence and a ready-to-show text) per service level (standard, express) between two postcodes, optionally limited to some carriers. Returns an empty list if no carrier is enabled. POST /estimated_delivery_dates.

Input parameters:

- `couriers` (array): Carrier keywords to estimate for, e.g. CouriersPlease (default: all enabled).
- `from_postcode` (string, required): Origin (pickup) postcode.
- `preparation_time` (string): Lead time before pickup as DD:HH:MM, e.g. 01:05:30.
- `service_levels` (array)
- `to_postcode` (string, required): Destination postcode.

### `shippit_get_order` (~97 tokens)

Get order

One Shippit order by tracking number: state, courier and price allocated, delivery address, receiver, parcels, products, references and (once booked) manifest id and number. There is no list-orders endpoint in the Shippit API. GET /orders/{tracking_number}.

Input parameters:

- `tracking_number` (string, required): The Shippit tracking number of the order (returned by shippit_create_order; usually starts with PP).

### `shippit_get_tracking` (~78 tokens)

Get order tracking

The status history of an order (status, date, time, who changed it) and the public tracking page URL to give the recipient. GET /orders/{tracking_number}/tracking.

Input parameters:

- `tracking_number` (string, required): The Shippit tracking number of the order (returned by shippit_create_order; usually starts with PP).

### `shippit_get_manifest_document` (~97 tokens)

Get manifest document

The booking manifest document for a manifest id (from shippit_book_orders or shippit_get_order): carrier, order count, tracking numbers and a pre-signed PDF URL valid for 7 days. A 422 means the manifest is still generating: retry shortly. GET /book/{manifest_id}/document.

Input parameters:

- `manifest_id` (integer, required): The Shippit manifest id (not the carrier's manifest number).

### `shippit_create_order` (~601 tokens)

Create order

WRITE: create a domestic shipping order in Shippit. Shippit then allocates a carrier (your account rules, or the carrier named in courier_allocation) and, unless suppress_communications is true, emails the recipient tracking notifications. Requires confirm: true. Standard, express and click-and-collect orders are only booked with the carrier later, by shippit_label_order and shippit_book_orders (priority and on-demand orders, which book inside the create request, are not supported here). validate defaults to true: the order is not saved when the suburb and postcode do not match (a suggested address is returned instead). Creating twice creates two orders. International orders (customs data) are not supported here. POST /orders.

Input parameters:

- `authority_to_leave` (string): Whether the parcel may be left unattended.
- `confirm` (boolean, required): Must be true. The order is real: it can email the customer and, for a named on-demand carrier, book it at once. Ask the user to confirm first.
- `courier_allocation` (string): A specific carrier keyword, e.g. CouriersPlease (see the Shippit carriers list). Instead of courier_type.
- `courier_type` (string): Service level (default standard). Give this or courier_allocation.
- `customer_email` (string, required): The customer's email (Shippit sends tracking notifications here unless suppressed).
- `customer_first_name` (string, required)
- `customer_last_name` (string)
- `customer_mobile` (string)
- `delivery_address` (string, required)
- `delivery_company` (string)
- `delivery_country_code` (string): Two-letter country code (default: the merchant's home country, usually AU).
- `delivery_instructions` (string): Instructions for the driver, at most 55 characters.
- `delivery_postcode` (string, required)
- `delivery_state` (string, required): State. Australian orders use NSW, VIC, QLD, WA, SA, TAS, ACT or NT.
- `delivery_suburb` (string, required)
- `features` (array): Carrier add-on services; some need prior approval from Shippit.
- `parcels` (array, required): The parcels (qty and weight are the minimum; leave qty out when you also send products).
- `products` (array): Optional line items for the packing slip.
- `receiver_contact_number` (string)
- `receiver_name` (string): Name of the person receiving it, if different from the customer.
- `retailer_invoice` (string): Your order number, printed on the label and packing slip.
- `retailer_reference` (string)
- `suppress_communications` (boolean): true = Shippit sends no tracking notifications to the customer for this order (default false: it does).
- `tags` (array): Your own labels for filtering.
- `validate` (boolean): Reject the order if suburb and postcode do not match (default true).

### `shippit_label_order` (~159 tokens)

Label order

WRITE: confirm an order for shipping and fetch its label. This is the Shippit 'label' step: it finalises the carrier and price (the order moves to Ready to Ship) and returns the carrier, tracking and consignment details plus pre-signed PDF URLs (valid 7 days) for the shipping label, packing slip and any customs documents. A 422 means the order is still processing or has no valid carrier or quote: retry shortly or read the error. Labelling is the step before shippit_book_orders. GET /orders/{tracking_number}/label.

Input parameters:

- `tracking_number` (string, required): The Shippit tracking number of the order (returned by shippit_create_order; usually starts with PP).

### `shippit_book_orders` (~157 tokens)

Book orders with carriers

WRITE: book labelled orders with their carriers for pickup (the Shippit 'book' step). Shippit returns one manifest per carrier; the carrier then collects and bills the parcels. Orders must have been labelled first (shippit_label_order). The call fails as a whole when a tracking number is unknown; otherwise each manifest reports success or an error per order. Booked orders can no longer be edited. Requires confirm: true. A reply where every manifest failed is an error. POST /book.

Input parameters:

- `confirm` (boolean, required): Must be true. Booking commits the orders to carrier pickup and charges; ask the user to confirm first.
- `tracking_numbers` (array, required): Tracking numbers of the labelled orders to book.

### `shippit_cancel_order` (~143 tokens)

Cancel order

WRITE: cancel a Shippit order by tracking number (the order ends in state cancelled and cannot be revived; for some carriers Shippit also sends a cancellation request to the carrier). Shippit refuses with a 422 and the reason when the order can no longer be cancelled, for example once the carrier has it. Requires confirm: true. DELETE /orders/{tracking_number}.

Input parameters:

- `confirm` (boolean, required): Must be true. A cancelled order cannot be recovered; ask the user to confirm first.
- `tracking_number` (string, required): The Shippit tracking number of the order (returned by shippit_create_order; usually starts with PP).

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/io-usefulapi-shippit/shippit#diagnostics

## Score history

- 2026-10-25: 61
- 2026-10-24: 61

## Common questions

### What is the Shippit MCP by usefulapi server?

Shippit MCP by usefulapi is listed in the public MCP registry as io.usefulapi/shippit. Get Shippit quotes, track and manage orders; create, label, book and cancel shipments on approval. This page covers its hosted endpoint (https://shippit.usefulapi.io/mcp).

### Is the Shippit MCP by usefulapi server safe to use?

Shippit MCP by usefulapi scores 61 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Shippit MCP by usefulapi server expose?

Shippit MCP by usefulapi exposes 12 tools: shippit_get_merchant, shippit_get_operating_hours, shippit_list_webhooks, shippit_get_quotes, shippit_estimate_delivery_dates, and 7 more. Their descriptions and schemas cost roughly 1,960 tokens of context every time the server is loaded.

### Does the Shippit MCP by usefulapi server require authentication?

Yes. Shippit MCP by usefulapi asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the Shippit MCP by usefulapi server still maintained?

Shippit MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 25 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://shippit.usefulapi.io/mcp
- Repository: https://github.com/m190/usefulapi-mcp
- Website: https://usefulapi.io/shippit/
- Changelog RSS feed: https://verifymcp.io/servers/io-usefulapi-shippit/shippit.xml
- Changelog JSON feed: https://verifymcp.io/servers/io-usefulapi-shippit/shippit.json
- HTML version of this page: https://verifymcp.io/servers/io-usefulapi-shippit/shippit
