warp-agent-mcp
Server Details
Quote, book, and track LTL, FTL, cargo van, and box-truck freight via the Warp API.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- warpfreight/warp-agent-mcp
- GitHub Stars
- 3
- Server Listing
- warp-agent-mcp
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 26 of 26 tools scored. Lowest: 3.6/5.
Each tool has a clearly distinct purpose. Overlapping tools like batch_quote, compare_modes, and per-mode quote tools are clearly differentiated by their scope and use cases. Batch vs single booking are also distinct.
Most tools follow a verb_noun pattern in snake_case (e.g., batch_quote, list_bookings). A few like 'analytics' and 'events' are noun-only but still clear. Overall consistent with minor deviations.
26 tools cover a broad logistics domain including quoting, booking, tracking, documents, and account management. While slightly heavy, each tool serves a specific function and the count is reasonable for the scope.
The tool set appears complete for freight operations: all major modes quoted, single/batch/multi-stop booking, tracking, documents, invoices, history, and account management. No obvious missing CRUD operations.
Available Tools
26 toolsanalyticsView AnalyticsARead-onlyInspect
Show bookings analytics: total revenue, shipment count, breakdown by source (mcp vs cli). Use this to track how much revenue has been generated through AI tools.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's addition of analytics scope is helpful but not critical. No contradiction. No further behavioral details (e.g., date range scope) are provided.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words, front-loaded with key information. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lists the metrics returned, compensating for missing output schema. However, it omits any mention of time period or filtering, which could be relevant for a comprehensive understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, the description does not need to explain parameters. It adds no param info but baseline is 4 per guidelines.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool shows bookings analytics, listing specific metrics (total revenue, shipment count, breakdown by source). It distinguishes from sibling tools like list_bookings by focusing on aggregated data rather than individual records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: 'Use this to track how much revenue has been generated through AI tools.' It implies when to use but does not explicitly mention alternatives or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_bookBatch Book ShipmentsADestructiveInspect
Book MANY already-quoted lanes in ONE call (sequential, one card charge per row). Use this after batch_quote when the user says "book all of them" or "book rows 1, 3, 5" — do NOT call book in a loop. Each row needs a quote_id (the same one batch_quote returned for that row). Pickup/delivery default to the shared addresses at the top level so a single warehouse → many destinations only needs one address pair. Returns a progress card showing per-row Booked/Failed status with tracking numbers.
| Name | Required | Description | Default |
|---|---|---|---|
| bookings | Yes | Array of bookings to confirm (1-25). Each is one freight shipment, one card charge. | |
| shared_notes | No | Notes applied to every row without their own. | |
| shared_pickup | No | Pickup address applied to every row that doesn't supply its own (FBA case: one warehouse → many destinations). | |
| shared_delivery | No | Delivery address applied to every row that doesn't supply its own. Uncommon (usually each row goes somewhere different). | |
| shared_reference | No | Reference applied to every row without its own. | |
| shared_accessorials | No | ||
| shared_pickup_window | No | ||
| shared_delivery_window | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=true. Description adds 'sequential, one card charge per row', fallback mechanism for shared parameters, and return of progress card with per-row status—valuable behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose and usage, then parameter behavior, then return. Every sentence adds value. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, usage, parameter fallbacks, return value (progress card), and specific use case (FBA). No output schema exists, but description explains output adequately. Complete and self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds meaning beyond schema: explains quote_id must be from this session, pickup/delivery default to shared addresses, shared_pickup is for FBA case. Schema coverage 63% is compensated by rich contextual details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states specific verb 'Book' and resource 'MANY already-quoted lanes in ONE call', distinguishing from siblings like 'book' (single) and 'multistop_book'. It clarifies it's for after batch_quote, making purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs when to use (after batch_quote on 'book all of them' etc.) and when not to ('do NOT call book in a loop'), and mentions alternatives (batch_quote).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_quoteBatch Quote LanesARead-onlyInspect
Price MANY lanes in ONE call (parallel, ~1-3s for typical spreadsheets). Use this WHENEVER the user gives you a spreadsheet, CSV, or list of multiple lanes to quote — do NOT call warp_*_quote in a loop. Returns a single batch-quote card with one row per lane (origin → dest · mode · pallets · price · transit). Each priced lane keeps its quote_id and can be booked individually with book ("book row 3").
| Name | Required | Description | Default |
|---|---|---|---|
| lanes | Yes | Array of lane requests (1-50). Each row maps to one quote. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses behavior beyond annotations: parallel execution, estimated timing (~1-3s), and that each lane returns a quote_id that can be booked individually. Although readOnlyHint is true, 'price' is consistent with a read-only quote generation operation. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences that front-load the core functionality and performance, followed by usage guidance and return structure. Every sentence adds essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the large set of sibling tools (many individual quote tools), the description completely addresses the batch nature, return format, and booking capability. Even without an output schema, it sufficiently describes the output structure for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single lanes parameter. The description adds valuable semantics: 'Each row maps to one quote' and mentions that each quoted lane retains its quote_id for individual booking, which enriches understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Price MANY lanes in ONE call' and distinguishes it from sibling tools like warp_*_quote by explicitly instructing not to call them in a loop. The verb 'price' combined with 'batch quote lanes' makes the action and resource unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'Use this WHENEVER the user gives you a spreadsheet, CSV, or list of multiple lanes to quote — do NOT call warp_*_quote in a loop.' This directly tells the agent when to use the tool and when not to use alternatives, leaving no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bookBook ShipmentADestructiveInspect
Book a quoted shipment using any quote_id or option id returned from a quote tool (Warp or market carrier). Requires quote_id + pickup and delivery addresses. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Special instructions for the shipment | |
| pickup | No | Pickup address. Required if no default shipper is saved on your account. | |
| delivery | No | Delivery address. Required if this lane has not been shipped before. | |
| quote_id | Yes | Quote ID from warp_quote_id (Warp) or id field of any market option returned by a quote tool. Use the id from your MOST RECENT quote — market-option ids rotate on every quote call and stale ids are rejected. | |
| reference | No | Your internal reference number | |
| accessorials | No | Pickup/delivery accessorial services. Should match the accessorials used when quoting. | |
| pickup_window | No | Pickup time window, 24h HH:MM, e.g. { from: '08:00', to: '17:00' }. Defaults to a full business day if omitted. | |
| delivery_window | No | Delivery time window, 24h HH:MM, e.g. { from: '09:00', to: '12:00' }. Defaults to a full business day if omitted. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true, so the description adds value by stating 'Auth required' and specifying required inputs. It does not contradict annotations and provides sufficient behavioral context for a booking operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no fluff. The first sentence states purpose precisely, and the second covers prerequisites. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given high schema coverage, the description is adequate for a booking tool. It lacks details about return values (no output schema), but the rules allow that. Overall, it provides enough context for an agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents parameters well. The description adds context by reinforcing required fields and adding 'Auth required', which provides marginal value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Book' and resource 'shipment', and specifies the source of quote IDs (Warp or market carrier). It distinguishes from siblings like batch_book by focusing on a single quoted shipment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear prerequisites (quote_id + addresses) and notes auth required, giving good context for when to use the tool. However, it does not explicitly compare to sibling booking tools or mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
box_truck_quoteGet Box Truck QuoteARead-onlyInspect
Quote a 26' box truck shipment (1-12 pallets, firm price, 15-min expiry)
| Name | Required | Description | Default |
|---|---|---|---|
| pallets | Yes | Number of pallets (1-12) | |
| commodity | No | Commodity description | |
| origin_zip | Yes | 5-digit US ZIP code | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| destination_zip | Yes | 5-digit US ZIP code | |
| pickup_services | No | Pickup accessorials: pickup-appointment, liftgate-pickup, residential-pickup, limited-access-pickup, inside-pickup, driver-assist-pickup | |
| delivery_services | No | Delivery accessorials: delivery-appointment, liftgate-delivery, residential-delivery, limited-access-delivery, inside-delivery, driver-assist-delivery | |
| weight_lbs_per_pallet | Yes | Weight per pallet in lbs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds that the quote is firm with a 15-minute expiry, which is valuable behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with key information. No wasted words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters and no output schema, the description is adequate but could be more complete by explicitly stating what is returned (e.g., quote amount, expiry, etc.). It mentions 'firm price' but not the full response structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema (e.g., pallet range is already in min/max). No extra parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it quotes a 26' box truck shipment with specific attributes (1-12 pallets, firm price, 15-min expiry). This distinguishes it from siblings like van_quote and ftl_quote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies real-time quoting for box truck shipments but does not explicitly state when to use this tool over alternatives like ltl_quote or multistop_quote. No exclusions or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_modesCompare Freight ModesARead-onlyInspect
THE ONE CALL for "what's the cheapest/best way to ship this?". Prices ALL FOUR freight modes (LTL / full truckload / cargo van / 26' box truck) in ONE keyless call to Warp's all-modes engine and returns a decision-complete recommendation: the winning mode, its rate, transit, a bookable quote_id, the trade-off math against the runner-up, and every mode that couldn't price (with the reason). Prefer this over calling the individual quote tools and comparing them yourself — one round trip, and modes Warp can't serve are returned as explicitly unavailable WITH the reason rather than being dropped, so there is never a silently shortened list to guess from. Dims are optional (a standard 48x40x48 pallet is assumed). Set benchmark_market:true to also rank Warp's rate against the live 30+ carrier market for the lane (adds ~15-25s) — that makes the answer decision-complete: the right mode AND whether the price is actually good. Quote-only: it never books. To book, pass the recommended quote_id to book after the user confirms.
| Name | Required | Description | Default |
|---|---|---|---|
| hazmat | No | Hazardous materials flag | |
| pallets | Yes | Number of pallets (1-26) | |
| priority | No | What to optimize the recommendation for. Defaults to 'cheapest'. | |
| width_in | No | Pallet width in inches (defaults to 40) | |
| commodity | No | Commodity description | |
| height_in | No | Pallet height in inches (defaults to 48) | |
| length_in | No | Pallet length in inches (defaults to 48) | |
| stackable | No | Whether pallets are stackable | |
| origin_zip | Yes | 5-digit US ZIP code | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| freight_class | No | Freight class (optional, FAK rates used if omitted) | |
| destination_zip | Yes | 5-digit US ZIP code | |
| pickup_services | No | Pickup accessorials: pickup-appointment, liftgate-pickup, residential-pickup, limited-access-pickup, inside-pickup, driver-assist-pickup | |
| benchmark_market | No | Also benchmark Warp's rate against the live 30+ carrier LTL market for this lane. Makes the answer decision-complete (is this rate actually good?) but costs ~15-25s — the mode comparison alone returns in ~1-2s. Defaults to false. | |
| delivery_services | No | Delivery accessorials: delivery-appointment, liftgate-delivery, residential-delivery, limited-access-delivery, inside-delivery, driver-assist-delivery | |
| weight_lbs_per_pallet | Yes | Weight per pallet in lbs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses that dims are optional with a standard pallet assumption, explains the benchmark_market time cost (15-25s), and ensures modes that can't be priced are returned with reasons, preventing silent omissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the main purpose, every sentence adds value, and it is well-organized without redundancy. It efficiently conveys all necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description fully explains the return value including winning mode, rate, transit, quote_id, runner-up comparison, and unavailable modes with reasons. It also covers the benchmark option and the tool's read-only nature, making it completely informative for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage, so baseline is 3. The description adds some context like default dimensions and benchmark time cost, but does not significantly enhance parameter understanding beyond schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is the single call for comparing freight modes, returning a decision-complete recommendation. It distinguishes itself from individual quote tools by emphasizing efficiency and comprehensive results.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises to prefer this tool over individual quote tools for mode comparison, and clarifies that it is quote-only and the quote_id should be passed to the `book` tool for booking. Provides clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_load_templateDelete Load TemplateADestructiveInspect
Delete a saved load template by its id (starts with lt_). Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| load_template_id | Yes | Template id to delete (starts with lt_) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true. The description adds useful context: auth requirement and the id format (starts with lt_). No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. Every part is essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with one parameter and no output schema, the description provides all necessary context: action, resource, id format, and auth requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the schema already describes the parameter well. The description repeats this information without adding new meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Delete a saved load template by its id', using a specific verb and resource. It clearly distinguishes from sibling tools like 'save_load_template' and 'load_templates'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Auth required', but does not provide explicit guidance on when to use this tool versus alternatives or when not to use it. No exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
eventsGet Shipment EventsARead-onlyInspect
Get the full tracking event history for a shipment (timeline of pickups, in-transit updates, deliveries). Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| shipment_id | Yes | Shipment ID from book response |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's mention of 'Auth required' adds value beyond annotations. It discloses the return type (timeline of events) but omits details like pagination, ordering, or error handling. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with parenthetical examples. Every word adds value; no redundancies.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 1-parameter retrieval tool with no output schema, the description covers purpose, auth requirement, and example content. Minor gaps (e.g., no mention of pagination) are acceptable given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter 'shipment_id' is described in the schema as 'Shipment ID from book response'. The tool description adds no further parameter details, so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('full tracking event history for a shipment'), with concrete examples (pickups, in-transit updates, deliveries). It distinguishes from siblings like 'track' by specifying 'full history' and 'timeline'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Auth required' but does not provide explicit guidance on when to use this tool versus alternatives like 'track' or 'get_documents'. No exclusion criteria or alternative recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ftl_quoteGet Full Truckload QuoteARead-onlyInspect
Quote a full truckload (53' dry van). Only origin, destination, and date required.
| Name | Required | Description | Default |
|---|---|---|---|
| pallets | No | Pallets (optional, display only) | |
| commodity | No | Commodity description | |
| origin_zip | Yes | 5-digit US ZIP code | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| destination_zip | Yes | 5-digit US ZIP code | |
| weight_lbs_per_pallet | No | Weight per pallet (optional) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the agent knows the tool is safe. The description does not contradict annotations and adds a minor behavioral cue by stating minimal input requirements, but it does not elaborate on the quote generation process or output behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is front-loaded with the core action ('Quote a full truckload') and immediately clarifies the essential scope and required fields. No wasted words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks details about the output format (e.g., price, transit time) and does not disambiguate from the sibling tool 'van_quote', which may cause confusion. Given no output schema, more information on return values would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the base expectation is a 3. The description adds value by clarifying that only origin, destination, and date are required, implicitly marking other parameters as optional. This helps the agent understand which fields are essential for the quote.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states that the tool quotes a full truckload (53' dry van) and highlights the minimal required fields (origin, destination, date). This clearly distinguishes it from siblings like ltl_quote or box_truck_quote.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly signals when to use this tool by specifying 'full truckload (53' dry van)' and emphasizing that only three fields are required. It lacks explicit exclusions or alternative recommendations, but the context is clear enough for an AI agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_documentsGet Shipment DocumentsARead-onlyInspect
List shipment documents (BOL, POD, customs forms, etc.). Returns download URLs. Auth required. To fetch the Bill of Lading, pass document_type='bol' — this is how EXTERNAL / brokered (market-carrier) BOLs are returned now, not just Warp-carrier ones.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | Order ID (typically the same as shipment_id) | |
| document_type | No | Filter to one document type. Common: 'bol' (Bill of Lading — required for external/market carrier BOLs), 'pod' (proof of delivery). Omit to list all documents. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnlyHint=true. Description adds that auth is required and returns download URLs, providing useful behavioral context beyond the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: purpose, return/auth, and a specific usage note. No fluff, front-loaded, every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple tool with 2 params and no output schema, description covers purpose, return value, auth, and special case. Could mention pagination or empty results but not critical; fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters fully. Description adds value by clarifying that document_type filters to one type and gives common values ('bol', 'pod'), and explains special behavior for 'bol' fetching external BOLs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists shipment documents with examples (BOL, POD, customs forms) and mentions returning download URLs. Differentiates from sibling tools like get_invoice which deals with financial documents, no direct competitor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides specific guidance on using document_type='bol' for external BOLs and notes auth required, but does not explicitly state when to avoid this tool or mention alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_invoiceGet InvoiceARead-onlyInspect
Retrieve the invoice for a delivered shipment (line items, taxes, payment status). Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | Order ID (typically the same as shipment_id) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so no contradiction. The description adds value by specifying the conditional context ('for a delivered shipment') and the need for authentication, which annotations do not cover.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence with no redundant words. It front-loads the key action and resource, making it efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description partially compensates by mentioning returned data (line items, taxes, payment status). However, it omits expected response format (e.g., JSON vs. file) and behavior for non-delivered shipments, leaving gaps for a one-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with 'order_id' fully documented. The description does not add parameter-specific meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Retrieve' and resource 'invoice for a delivered shipment', listing specific contents (line items, taxes, payment status). This distinguishes it from sibling tools like 'get_documents' (general documents) and 'payment_status' (only status).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description notes 'Auth required' and implies use after shipment delivery, but lacks explicit guidance on when not to use or alternatives (e.g., 'get_documents' for other shipment docs). No exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lane_historyView Lane HistoryARead-onlyInspect
Get shipping history for your lanes (past shipments, last consignee, counts). Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds value by disclosing authentication requirements and the specific data returned (past shipments, last consignee, counts), which goes beyond the annotated safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly states purpose and key details. Every word contributes value, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, read-only, no output schema), the description adequately covers purpose, required authentication, and return data. It does not specify format or pagination, but for a simple history endpoint it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist; baseline score is 4 as per guidelines. The description does not need to compensate for parameter documentation since schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Get' with clear resource 'shipping history for your lanes', and lists example data (past shipments, last consignee, counts). This distinguishes it from sibling tools like analytics or quote_history, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance is provided. The description only states 'Auth required', but lacks context on when this tool is preferred over alternatives like analytics or quote_history.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_bookingsList BookingsARead-onlyInspect
List recent bookings for this API key, newest first. Auth required. Renders an interactive shipments card (click a shipment to expand pickup/delivery, freight, and a tracking link).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max bookings to return (default 25, max 100) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds that authentication is required and that results are returned newest first with an interactive card layout. This usefully supplements the annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the action and ordering. Every word adds value; no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description partly compensates by describing the output (shipments card). It lacks details on error handling or full response structure, but for a simple list tool it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no extra meaning beyond what is already in the schema. The description's mention of 'recent' is not parameter-specific but provides context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists recent bookings for the API key, ordered newest first. It uniquely describes an 'interactive shipments card' output, differentiating it from sibling tools like 'track' or 'get_documents'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus other tools (e.g., 'get_documents', 'events'). No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_templatesList Load TemplatesARead-onlyInspect
List the agent's saved load templates — reusable shipment configs (name, dims, weight, commodity). Recall one to quote/book a repeat kind of load without re-entering details. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond the readOnlyHint annotation by specifying that the tool lists reusable shipment configs with fields (name, dims, weight, commodity) and requires authentication. It confirms the read-only nature without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, both highly informative. The first sentence states the primary function, and the second provides usage guidance. No redundant or unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, a readOnlyHint annotation, and no output schema, the description is complete. It clearly explains what is listed, the purpose, and the auth requirement, leaving no significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, and the description effectively explains why by describing the type of content returned. It adds meaning beyond the schema by detailing the fields in a template and the use case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'List the agent's saved load templates', clearly specifying the action and resource. It explains what templates contain and distinguishes from sibling tools like save and delete by focusing on listing and recalling for quoting/booking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use it: to recall a template for quoting/booking a repeat load. It also mentions 'Auth required' as a prerequisite. However, it does not provide explicit exclusions or alternatives, which would make it a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
locationsList Saved LocationsARead-onlyInspect
List the agent's saved pickup/delivery locations (addresses Warp has on file for this account), so you can reuse them when booking instead of re-typing addresses. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds 'Auth required' beyond the annotations (which only have readOnlyHint=true). This informs the agent of a behavioral requirement. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and benefit. Every sentence earns its place; no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with no parameters, the description fully informs the agent of what it does, why to use it, and the authentication requirement. No output schema needed as the description explains the content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema coverage is 100%. The description adds value by explaining that the list contains pickup/delivery addresses, which is useful context beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('saved pickup/delivery locations'), and explains the benefit ('reuse them when booking'). It clearly distinguishes from sibling tools like 'list_bookings'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states when to use ('so you can reuse them when booking instead of re-typing addresses'), providing clear context. No explicit exclusions or alternatives are given, but it is adequate for a simple list tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
loginLog In to WarpAInspect
Log in to Warp with email and password. Saves credentials locally so booking tools work. Call this if the user needs to authenticate or if payment_status says no key is configured.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Warp account email | ||
| password | Yes | Warp account password |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it 'Saves credentials locally so booking tools work', which is a behavioral trait beyond annotations (readOnlyHint=false, destructiveHint=false). No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. Front-loaded with purpose, then key behavioral detail and usage guidance. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but tool is simple authentication. Description explains side effect (saves credentials). Could mention error handling or session duration, but still reasonably complete given context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema provides descriptions for both parameters (email and password) with 100% coverage. Description does not add extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Log in to Warp with email and password', specifying the verb (log in) and resource (Warp). No ambiguity, and it distinguishes from sibling tools which are about shipping/booking functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Call this if the user needs to authenticate or if payment_status says no key is configured', giving clear when-to-use guidance. Could elaborate on when not to use (e.g., if already logged in), but still effective.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ltl_market_optionsCompare LTL CarriersARead-onlyInspect
Multi-carrier LTL comparison — returns 30+ carrier rates ranked by price (slow, ~15s). Call IMMEDIATELY AFTER ltl_quote with the same parameters; this fills in the 'finding other carrier rates…' section the fast quote card was showing. Useful when the user wants to compare carriers or pick a specific one. Do not declare a winner or recommend a specific carrier; just present the ranked list.
| Name | Required | Description | Default |
|---|---|---|---|
| hazmat | No | Hazardous materials flag | |
| pallets | No | Number of pallets | |
| width_in | No | Pallet width in inches | |
| commodity | No | Commodity description | |
| height_in | No | Pallet height in inches | |
| length_in | No | Pallet length in inches | |
| stackable | No | Whether pallets are stackable | |
| origin_zip | Yes | 5-digit US ZIP code | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| freight_class | No | Freight class (optional, FAK rates used if omitted) | |
| destination_zip | Yes | 5-digit US ZIP code | |
| pickup_services | No | Pickup accessorials: pickup-appointment, liftgate-pickup, residential-pickup, limited-access-pickup, inside-pickup, driver-assist-pickup | |
| delivery_services | No | Delivery accessorials: delivery-appointment, liftgate-delivery, residential-delivery, limited-access-delivery, inside-delivery, driver-assist-delivery | |
| weight_lbs_per_pallet | No | Weight per pallet in lbs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, and the description adds valuable behavioral context: the tool is slow (15s), returns a ranked list of 30+ carrier rates. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, then usage instructions, then constraints. Every sentence is necessary and efficient, no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given complexity (14 params), full schema coverage, no output schema, and annotations, the description explains the tool's workflow position, output structure (ranked list of 30+ rates), and behavior. Sufficient for an agent to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with descriptions. The description adds meaning by indicating that parameters are the same as ltl_quote, providing cross-tool consistency. This is useful beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs a multi-carrier LTL comparison, returns 30+ carrier rates ranked by price, and distinguishes itself from sibling tools like ltl_quote by specifying its role in the workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to call IMMEDIATELY AFTER ltl_quote with the same parameters, provides context for when it's useful (compare carriers, pick specific one), and includes a clear constraint: do not declare a winner or recommend a carrier.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ltl_quoteGet LTL Freight QuoteARead-onlyInspect
Quote an LTL shipment — returns Warp's all-inclusive rate FAST (~1-2s) so the user sees a price immediately. The inline quote card shows the Warp rate plus a 'finding other carrier rates…' loading indicator. IMMEDIATELY follow up by calling ltl_market_options with the same parameters to fill in the multi-carrier comparison (~15s). Provide dims + commodity for an exact firm quote; if you don't have dims, quote anyway — it assumes a standard 48x40x48 pallet (FAK, no freight class) for an instant price. Don't block on asking for pallet dimensions; quote first, then pass real dims for an exact rate. When a palletized load could also move by box truck or van, quote LTL alongside those and show the cheapest valid mode. Do not editorialize the results. Do not declare a winner or recommend a specific carrier. Present Warp's quote first, then list market options as context. Let the user decide.
| Name | Required | Description | Default |
|---|---|---|---|
| hazmat | No | Hazardous materials flag | |
| pallets | No | Number of pallets | |
| width_in | No | Pallet width in inches | |
| commodity | No | Commodity description | |
| height_in | No | Pallet height in inches | |
| length_in | No | Pallet length in inches | |
| stackable | No | Whether pallets are stackable | |
| origin_zip | Yes | 5-digit US ZIP code | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| freight_class | No | Freight class (optional, FAK rates used if omitted) | |
| destination_zip | Yes | 5-digit US ZIP code | |
| pickup_services | No | Pickup accessorials: pickup-appointment, liftgate-pickup, residential-pickup, limited-access-pickup, inside-pickup, driver-assist-pickup | |
| delivery_services | No | Delivery accessorials: delivery-appointment, liftgate-delivery, residential-delivery, limited-access-delivery, inside-delivery, driver-assist-delivery | |
| weight_lbs_per_pallet | No | Weight per pallet in lbs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds significant behavioral context beyond readOnlyHint annotation: describes speed (~1-2s), inline loading indicator, default pallet assumption, and the need to call ltl_market_options. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is somewhat lengthy but front-loaded with key purpose and speed. Every sentence serves a purpose, though some could be slightly more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 14 parameters, no output schema, and no nested objects, the description comprehensively covers behavior, timing, default assumptions, and follow-up actions. It fully satisfies the contextual needs for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is 100%, description adds critical semantics: explains that missing dimensions default to a standard pallet, and that providing dims yields an exact firm quote. This compensates for any ambiguity in parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool quotes an LTL shipment, returns Warp's all-inclusive rate fast, and distinguishes it from sibling tools like ltl_market_options by specifying the follow-up action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: when to quote, to follow up with ltl_market_options, to not block on dimensions, to quote even without dims, and to not editorialize results. Also suggests comparing LTL with other modes when applicable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
multistop_bookBook Multi-stop FTLADestructiveInspect
Book a multi-stop FTL route quoted by multistop_quote. Send one shipments[] leg per pickup→delivery pair riding the truck (minimum 2 legs), each leg referencing the quoted stop sequence by stop_index with full address + arrival window. No card charge fires from this call — multi-stop pricing settles via your Warp account. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| quote_id | Yes | Quote ID from multistop_quote (PRICING_MULTI_…). Use the id from your MOST RECENT quote — ids expire and rotate. | |
| shipments | Yes | One leg per pickup→delivery pair (the gateway requires at least 2) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that no card charge fires and auth is required, adding context beyond destructiveHint annotation. Mentions quote ID expiration. Could be improved by describing expected response (e.g., booking ID) but still strong.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, no wasted words. First sentence front-loads purpose, second explains structure, third covers payment and auth. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Good for selection and basic invocation, but lacks mention of response format (e.g., booking ID or confirmation). With no output schema and nested complexity, some guidance on return value would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds significant meaning beyond 100% schema coverage, e.g., 'one leg per pickup→delivery pair', 'minimum 2 legs', 'quote IDs expire and rotate', and 'stop_index referencing quoted sequence'. Enhances understanding of how to fill parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it books a multi-stop FTL route quoted by multistop_quote, with specific verb 'Book' and resource, and distinguishes from siblings like 'book' (single stop) and 'batch_book'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly indicates prerequisite (use after multistop_quote) and payment behavior (no card charge, account settlement). Implicitly differentiates from single-stop booking via sibling names, but lacks explicit 'when not to use' or alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
multistop_quoteGet Multi-stop FTL QuoteARead-onlyInspect
Quote a multi-stop FTL route: ONE truck visits 3+ stops in order (first pickup → intermediate stops → final delivery). Use for milk runs, pool distribution, or multi-store replenishment on a single truck — for a simple A→B truckload use ftl_quote. Auth required (free account). Coverage is route-dependent — not every route has a rate yet.
| Name | Required | Description | Default |
|---|---|---|---|
| pallets | No | Total pallets riding the route (default 1) | |
| commodity | No | Commodity description | |
| stop_zips | Yes | 5-digit ZIPs of the intermediate stops, in route order (at least 1) | |
| pickup_zip | Yes | 5-digit ZIP of the first pickup stop | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| delivery_zip | Yes | 5-digit ZIP of the final delivery stop | |
| vehicle_type | No | Vehicle code (default DRY_VAN_53) | |
| total_weight_lbs | No | Total weight across all freight in lbs (default 500 per pallet) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, and the description adds context about route ordering, authentication requirements, and coverage limitations. No contradictions detected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences cover purpose, use cases, alternative, and caveats. No redundancy; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output schema but describes the tool's behavior, scope, and limitations well. Outperforms a bare-bones description but could mention return format or error scenarios.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already details each parameter. The description provides no additional parameter-level meaning beyond what's in the schema, meriting a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the tool as quoting a multi-stop FTL route with a specific order (first pickup → intermediate stops → final delivery). It distinguishes itself from the sibling tool 'ftl_quote' by contrasting multi-stop vs simple A→B.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (milk runs, pool distribution, multi-store replenishment) and when not to (simple A→B, use ftl_quote). Also notes authentication requirement and coverage dependency.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
payment_statusCheck Payment StatusARead-onlyInspect
Check if the current Warp account has a payment method on file. Call this if the user asks about their payment status, or before booking if you want to confirm they can book. Returns has_card and onboard_url if a card needs to be added.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, and the description adds that it returns has_card and onboard_url if needed. No contradictions. Fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences that front-load the purpose and usage. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool, the description covers purpose, when to use, and return value. No output schema needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so no additional information needed. Baseline 4 for 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Check' and the resource 'payment method on file'. It distinguishes itself from sibling tools by being the only payment-specific tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when to use: 'if user asks about payment status' or 'before booking to confirm can book'. While it doesn't state when not to use, the context is clear and no alternatives exist among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_historyView Quote HistoryARead-onlyInspect
List your recent freight quotes (LTL, van, box truck, FTL) from all sessions. Useful for surfacing prior pricing on similar lanes. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that authentication is required, going beyond the readOnlyHint annotation. However, it does not disclose other behavioral traits like pagination, rate limits, or how 'recent' is defined. With annotations already indicating a safe read operation, the description provides minimal additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise—two sentences front-loaded with purpose and usage. Every sentence provides essential information without redundancy or wordiness, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool, the description covers purpose, scope, and authentication. It could clarify what 'recent' means (e.g., time range) or whether results are ordered, but given the simplicity of the tool, the description is largely complete and sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and 100% schema coverage, so the baseline is 3. The description does not add parameter-level details because there are none. It could have set expectations for the output format, but the dimension focuses on parameters, so the score remains at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'recent freight quotes', specifying the modes (LTL, van, box truck, FTL) and scope 'from all sessions'. This effectively distinguishes it from sibling tools that create individual quotes or fetch specific details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear use case ('surfacing prior pricing on similar lanes'), which guides when to use this tool. While it does not explicitly list alternatives or when not to use it, the context implies it is for historical review rather than new quotes or bookings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_load_templateSave Load TemplateAInspect
Save a reusable load template (a named shipment config) so it can be recalled for repeat lanes. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Friendly name, e.g. 'Standard 2-pallet LA load' | |
| hazmat | No | Whether the freight is hazmat | |
| width_in | Yes | Width in inches | |
| commodity | No | Commodity description | |
| height_in | Yes | Height in inches | |
| length_in | Yes | Length in inches | |
| stackable | No | Whether the freight is stackable | |
| weight_lbs | Yes | Total weight in lbs | |
| freight_class | No | Freight class (optional; FAK pricing if omitted) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate not read-only and not destructive. Description adds 'Auth required' which provides some behavioral context, but does not disclose whether saving overwrites existing templates, error behavior, or other side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single sentence plus an auth note, front-loading the key action and purpose with no wasted words. Highly concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 9 parameters, no output schema, and no behavior beyond creation described. Description explains purpose and auth but omits success/error responses, uniqueness constraints, or update behavior. Adequate but incomplete for complex usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. Description adds no additional semantics beyond what is in the schema, achieving baseline value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Save', resource 'reusable load template (a named shipment config)', and purpose 'so it can be recalled for repeat lanes'. Distinguishes from siblings like delete_load_template and load_templates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description mentions 'Auth required' but provides no explicit guidance on when to use this tool versus alternatives like load_templates or delete_load_template. Usage context is implied but not differentiated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
statusCheck API StatusARead-onlyInspect
Check Warp API health and version. Also validates your API key if one is configured.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true. The description adds that it validates API keys, which is useful behavioral context beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no wasted words. Every sentence contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description is adequate. It covers the main functions, though return format is not described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so the baseline is 4. The description correctly identifies the lack of input requirements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks Warp API health and version, and validates API key. This is specific and distinct from sibling tools like booking or quote tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternatives are mentioned. Usage is implied from the tool's nature as a health check, but no guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trackTrack ShipmentARead-onlyInspect
Track a shipment by ID or tracking number. Auth required.
| Name | Required | Description | Default |
|---|---|---|---|
| shipment_id | Yes | Shipment ID or tracking number (e.g. S-12345-2616) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description does not need to reiterate that. It adds 'Auth required', which is useful, but does not disclose what the tool returns or other behavioral aspects like real-time nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no wasted words. The key information is front-loaded: action, resource, and identifier types.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is present, and the description does not explain what the tool returns (e.g., tracking status, location, timestamps). With many sibling tools related to shipments, more context on the output is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a descriptive parameter including an example. The description adds little beyond the schema ('by ID or tracking number' mirrors the parameter description). Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Track' and the resource 'shipment', and specifies the identifier types (ID or tracking number). This distinguishes it from sibling tools like booking or quoting, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Auth required' but does not provide explicit guidance on when to use this tool versus alternatives (e.g., status, events). Usage context is implied but not elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
van_quoteGet Cargo Van QuoteARead-onlyInspect
Quote a cargo van shipment (1-3 pallets, firm price, 15-min expiry)
| Name | Required | Description | Default |
|---|---|---|---|
| pallets | Yes | Number of pallets (1-3) | |
| commodity | No | Commodity description | |
| origin_zip | Yes | 5-digit US ZIP code | |
| pickup_date | Yes | Pickup date YYYY-MM-DD | |
| destination_zip | Yes | 5-digit US ZIP code | |
| pickup_services | No | Pickup accessorials: pickup-appointment, liftgate-pickup, residential-pickup, limited-access-pickup, inside-pickup, driver-assist-pickup | |
| delivery_services | No | Delivery accessorials: delivery-appointment, liftgate-delivery, residential-delivery, limited-access-delivery, inside-delivery, driver-assist-delivery | |
| weight_lbs_per_pallet | Yes | Weight per pallet in lbs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the readOnlyHint annotation by disclosing that the quote is firm and expires in 15 minutes. This tells the agent that the result is time-sensitive and binding, which is valuable for decision-making.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence of 12 words, front-loading the core action and key constraints. Every word is necessary, with no repetition or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential purpose and key behaviors (firm, expiry). For a simple quotation tool with no output schema, it provides sufficient context for the agent to understand what the tool does and what to expect. It could mention the return format, but the core is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description does not add extra detail beyond the summary phrase '1-3 pallets'. While this aligns with the pallets constraint, it adds no new parameter-specific meaning, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Quote a cargo van shipment' with specific constraints (1-3 pallets, firm price, 15-min expiry). It immediately distinguishes from sibling tools like ltl_quote or ftl_quote by specifying the vehicle type and shipment size.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for cargo van shipments of 1-3 pallets, but does not explicitly state when to prefer it over alternatives or provide exclusions. Without explicit guidance, an agent must infer usage from the scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Your Connectors
Sign in to create a connector for this server.