You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(mcp): remove validate_address, add list_carrier_connections, clean up tests
Remove validate_address references (unsupported feature) from README, tests,
and client. Add list_carrier_connections tool to carriers module. Remove
console.log statements from integration tests.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: packages/mcp/README.md
+2-6Lines changed: 2 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Connect any AI agent (Claude, ChatGPT, Cursor, VS Code Copilot) to 50+ shipping
6
6
7
7
## Features
8
8
9
-
-**11 shipping tools** -- rates, labels, tracking, address validation, pickups, manifests, orders, and more
9
+
-**10 shipping tools** -- rates, labels, tracking, pickups, manifests, orders, and more
10
10
-**MCP Resources** for a live carrier capability catalog -- no other shipping MCP does this
11
11
-**stdio + Streamable HTTP** transport (remote-ready)
12
12
-**Works with any Karrio instance** -- cloud or self-hosted
@@ -114,7 +114,6 @@ The server exposes:
114
114
|`list_shipments`| List shipments with status, carrier, and date filters | No |
115
115
|`cancel_shipment`| Cancel a shipment and void its label | Yes |
116
116
|`track_package`| Track a package by tracking number with full event history | No |
117
-
|`validate_address`| Validate and correct a shipping address | No |
118
117
|`list_carriers`| List connected carriers and their capabilities | No |
119
118
|`schedule_pickup`| Schedule a carrier pickup for one or more shipments | Yes |
120
119
|`create_manifest`| Create an end-of-day manifest (SCAN form) | Yes |
@@ -128,8 +127,6 @@ The server exposes:
128
127
129
128
**`track_package`** -- Real-time package tracking. Provide a tracking number and optionally a carrier name (auto-detection is supported). Returns status, estimated delivery, and a chronological event history with locations.
130
129
131
-
**`validate_address`** -- Verify addresses before shipping. Returns the validated/corrected address with any corrections applied by the carrier.
132
-
133
130
**`list_carriers`** -- Discover which carriers are connected to your Karrio instance and what capabilities each supports (tracking, rating, shipping, pickup).
134
131
135
132
**`schedule_pickup`** -- Book a carrier pickup at a specified address with date, ready time, and closing time windows. Optionally include specific shipment IDs.
Copy file name to clipboardExpand all lines: packages/mcp/src/tools/carriers.ts
+77-4Lines changed: 77 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ export function registerCarrierTools(
8
8
): void{
9
9
server.tool(
10
10
"list_carriers",
11
-
"List all carrier accounts connected to your Karrio instance with their capabilities (tracking, rating, shipping, pickup). Use this to discover available carriers and their service codes before creating shipments or fetching rates.",
11
+
"List all supported carrier integrations in the Karrio catalog with their capabilities. Use this to discover what carriers can be connected. For carriers already connected to your account, use list_carrier_connections instead.",
12
12
{
13
13
carrier_name: z
14
14
.string()
@@ -47,10 +47,8 @@ export function registerCarrierTools(
47
47
(carrier: any)=>({
48
48
id: carrier.id,
49
49
carrier_name: carrier.carrier_name,
50
-
carrier_id: carrier.carrier_id,
51
-
active: carrier.active??carrier.is_active??null,
50
+
display_name: carrier.display_name??null,
52
51
capabilities: carrier.capabilities??[],
53
-
test_mode: carrier.test_mode??null,
54
52
}),
55
53
);
56
54
@@ -79,4 +77,79 @@ export function registerCarrierTools(
79
77
}
80
78
},
81
79
);
80
+
81
+
server.tool(
82
+
"list_carrier_connections",
83
+
"List carrier accounts connected to your Karrio instance. These are the carriers configured with credentials that you can use for rating, shipping, and tracking. Returns carrier_id, display_name, capabilities, and connection status.",
84
+
{
85
+
carrier_name: z
86
+
.string()
87
+
.optional()
88
+
.describe("Filter by carrier name (e.g., 'fedex', 'ups')"),
0 commit comments