Skip to main content
Glama

search_carriers

Filtered carrier search. Paid — you pay only when a call returns records; a zero-row result is free, same as an exact-key miss.

Defaults to Active carriers only — pass include_inactive=true to also see Inactive/Pending. Capped at 100 rows per response regardless of the requested limit; never a full-table dump. Carries no contact information (legal_name, dba_name, addresses, phone, email — removed 2026-09-19, see schemas.CarrierProfile) — a filterable, multi-result endpoint returning personal contact details for whoever matched a filter was the sharpest version of that risk in this product; use lookup_carrier's claimed_name/claimed_street/etc. if you need to confirm a specific carrier's claimed identity.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
stateNo
cargo_typeNo
safety_tierNo
authority_statusNo
include_inactiveNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations to lean on, the description carries the full behavioral burden and does so well: pricing behavior (paid only on non-empty results, zero-row free), default filtering to Active carriers, a hard 100-row cap, an explicit "never a full-table dump" guarantee, and a disclosure that contact fields were removed from the output. These are exactly the non-obvious traits an agent cannot infer from the empty schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Key operational facts (pricing, defaults, row cap, missing contact fields, alternative tool) are front-loaded and efficient. However, the aside about how a filterable multi-result endpoint returning contact details "was the sharpest version of that risk in this product" is editorial rationale that does not help an agent invoke the tool and dilutes the block.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotations, so the description must shoulder everything; it covers output shape (no contact info) and result-size limits well. The remaining gap is filter semantics: four of six input parameters are left undefined, which is a meaningful hole for a search endpoint whose whole value is filtering.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% across 6 parameters, so the description must compensate and largely does not. It explains include_inactive's default and effect and gives context for the limit cap, but state, cargo_type, safety_tier, and authority_status receive no meaning, valid values, or format guidance anywhere in the definition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("Filtered carrier search") and immediately delineates scope: multi-result, filterable, contact-information-free, capped at 100 rows. It explicitly contrasts itself with lookup_carrier for single-carrier identity confirmation, so an agent can distinguish it from that sibling without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names a concrete alternative (lookup_carrier's claimed_name/claimed_street) with the condition that selects it (confirming a specific carrier's claimed identity), and gives the include_inactive condition for widening the result set. It stops short of marking when search_carriers is the wrong choice versus the screening/roster siblings, so it is clear but not fully exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources