# ShipEngine MCP

> ShipEngine MCP gives your AI agent full control over complex multi-carrier shipping and logistics tasks. Instantly compare rates across UPS, FedEx, USPS, and dozens of global carriers. You can validate addresses, generate physical labels, programmatically create shipments, and pull real-time tracking status—all through natural conversation.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** shipping-api, label-generation, address-validation, rate-comparison, multi-carrier, logistics-automation

## Description

You're running an e-commerce operation, and shipping is the biggest headache. This MCP connects your AI agent directly to ShipEngine’s platform, giving you full control over every step of the logistics process. Instead of opening carrier sites and copy-pasting data, you simply ask your agent what you need. It handles comparing rates across multiple carriers, validating if an address will actually work for delivery, and even pulling real-time tracking details from any major service. This makes your AI act like a dedicated shipping clerk. Through Vinkius, the entire catalog of tools is available in one place, so you don't have to switch between specialized services. You can manage labels, check account statuses, and orchestrate complex shipments without leaving your chat window.

## Tools

### create_shipping_label
Generates a complete, ready-to-print shipping label for the shipment.

### create_shipment_object
Adds and saves a formal record of an intended shipment to the system.

### get_connection_status
Checks if your API connection key is active and properly set up for use.

### get_carrier_details
Retrieves specific information or metadata about a connected shipping carrier.

### get_label_info
Fetches detailed data and metadata associated with an existing label.

### get_shipping_rates
Compares and returns the current shipping costs from multiple carriers for a given package size and location.

### get_shipment_info
Retrieves comprehensive details about a previously created shipment record.

### list_carriers
Shows a list of all the shipping carriers you have connected to this account.

### list_created_labels
Lists records of labels that have been successfully purchased and generated.

### list_shipments
Provides a list of your most recent shipment activities and details.

### track_package
Checks the current status and location of a package using its tracking number.

### validate_address
Verifies if a shipping or receiving address is correctly formatted and usable by carriers.

## Prompt Examples

**Prompt:** 
```
Validate this address: 123 Main St, Austin, TX 78701.
```

**Response:** 
```
I've validated the address. It's a valid residential address in Austin, Texas. Would you like to check shipping rates for a package to this location?
```

**Prompt:** 
```
List all active carrier accounts in my ShipEngine.
```

**Response:** 
```
Retrieving carrier accounts... You have 3 active accounts: FedEx, UPS, and USPS. Would you like to see the profile metadata for any of them?
```

**Prompt:** 
```
Track the shipment with ID sh_123456789.
```

**Response:** 
```
Checking tracking status... Shipment sh_123456789 is currently 'Out for Delivery' via FedEx. It was last scanned at the local distribution center. Should I notify you when it's delivered?
```

## Capabilities

### Compare shipping rates
Get instant cost estimates from multiple carriers for a single shipment based on weight and destination.

### Validate delivery addresses
Check if sender or recipient addresses are accurate and deliverable, preventing costly return shipments.

### Generate shipping labels
Create finalized, printable labels for a shipment record using the proper carrier format.

### Track package status
Retrieve current location and delivery updates for any given tracking ID through natural language queries.

### Create shipment records
Establish a formal shipment record that ties together the sender, receiver, and desired carrier details.

## Use Cases

### Need to calculate shipping costs for a new product line.
A founder needs to know the optimal cost per unit. They ask their agent: 'What are the rates for 5kg from Texas to New York?' The agent uses `get_shipping_rates` and presents a clean comparison chart, telling them exactly which carrier offers the best deal.

### A customer provided a suspicious or incomplete address.
The support team member asks: 'Can you check this address?' The agent runs `validate_address` and reports back immediately that the street name is invalid, preventing an immediate failed shipment attempt.

### Time to fulfill 100 orders for a holiday rush.
The ops manager tells their agent: 'Create labels for these 10 order IDs.' The agent uses `create_shipment_object` first, then calls `get_shipping_rates`, and finally executes `create_shipping_label` for all 10 in sequence.

### Need a historical overview of past shipments.
A developer needs to audit recent activity. They ask the agent to 'List my last five shipments.' The agent uses `list_shipments` and provides enough data for them to investigate specific records or pull detailed information using `get_shipment_info`.

## Benefits

- Saves time on rate comparison. Instead of checking UPS, FedEx, and USPS websites individually, you ask your agent to use `get_shipping_rates`, which instantly compares all major carriers' costs in one go.
- Guarantees deliverability upfront. Before you even promise shipping, run the customer’s address through `validate_address` to catch typos or incomplete ZIP codes that will cause costly failures later.
- Simplifies label printing. Generating a physical label is as simple as calling `create_shipping_label`. You get the full metadata and the printable file without manual API integration code.
- Centralizes tracking data. You don't need to check three different carrier websites; just use `track_package` and your agent pulls the latest status from whichever service handles that ID.
- Streamlines setup and monitoring. Use `get_connection_status` or `list_carriers` to quickly confirm which services are connected, keeping your logistics infrastructure clean and visible.

## How It Works

The bottom line is that your AI client handles all the API calls and complex logistics work behind the scenes, giving you only the final, actionable answer.

1. Subscribe to this MCP on Vinkius and enter your ShipEngine API Key in the configuration settings.
2. Your AI client authenticates with the service, allowing it to access all carrier data and tools.
3. You issue a command through natural language—for example, 'What are the rates for two boxes from Austin to Miami?'—and the agent executes the necessary checks.

## Frequently Asked Questions

**How does ShipEngine MCP compare shipping rates?**
It uses the `get_shipping_rates` tool to query multiple carriers simultaneously. You provide the dimensions and destination, and it returns a side-by-side comparison of costs.

**Can I use ShipEngine MCP to validate addresses?**
Yes, you can run `validate_address` to check if any sender or recipient address is accurate before you commit to generating a label. This prevents failed shipments.

**Does the ShipEngine MCP only work for US carriers?**
No, it supports dozens of global carriers through its API connections. You can compare rates and create labels across multiple countries.

**What is the difference between `create_shipment_object` and `get_shipping_rates`?**
`get_shipping_rates` only gives you a cost estimate using sample data. You must first use `create_shipment_object` to save a formal record of the shipment before finalizing rates or generating labels.

**How often should I run get_connection_status?**
You should check this whenever you suspect your API keys might have expired or if you're having trouble running any shipping tool. It confirms the health of the connection.