FMCSA Carrier Intelligence
US carrier vetting on FMCSA data: authority, insurance, safety, identity links. Pay per call (x402)
| Endpoint | https://fmcsa-mcp-843680657471.us-central1.run.app/mcp (streamable-http) |
|---|---|
| Registry version | 0.2.0 |
| Now | 16 tools · grade F (45) · pin ts_20d8f14d6a96e93df7cb5ee279350f56 · protocol 2025-06-18 |
| First / last listed | 2026-11-02 00:29 UTC / 2026-11-02 00:29 UTC |
| Grade over time | 2026-11-02: F (45), 16 tools |
Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.
Tools: get_catalog get_sample lookup_carrier search_carriers get_safety_history screen_carrier_identity check_carrier_identity check_address_consistency confirm_identity_link check_applicant_against_roster get_identity_sample find_carrier_by_mc check_roster_changes get_carrier_selection_record get_inspection_crash_summary check_broker_authority
get_catalog | Free, unauthenticated dataset catalog.
Describes every table this service sells, its fields, current pricing,
and freshness. Read this before paying for anything.
params: none |
get_sample | Free, unauthenticated sample of carrier_profile rows.
Lets a buying agent evaluate data quality before spending USDC on the
paid tools.
params: none |
lookup_carrier | Look up a single carrier's current profile by USDOT number. Paid —
you pay only when a call returns records; an exact-key miss is free.
Returns every carrier_status (Active, Inactive, Pending) — check the
carrier_status field, don't assume Active.
insurance_cancel_pending is true when an insurance cancellation is on
file and not yet effective as of record_as_of (rare: dozens of carriers,
not tho params: usdot_number*, claimed_name, claimed_street, claimed_city, claimed_state, claimed_zip |
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.
safety_tier filters on safety_tier_derived: 1 = inspected with zero
BASIC alerts, up to 6 = all five BASICs alerted. Carriers with no tier
(never inspected, or not in SMS) never match a tier filter.
Defaults to Active carriers only — pass include_inactive=true to also
s params: state, safety_tier, authority_status, cargo_type, include_inactive, limit |
get_safety_history | Historical snapshots and changelog entries for a carrier. Paid —
you pay only when a call returns records; an exact-key miss is free.
changelog may legitimately be empty for a carrier without two
distinct-date snapshots yet — a diff needs both. authority_types,
oos_orders_active, insurance_bipd_on_file, insurance_cargo_on_file,
insurance_bond_on_file, has_been_revoked, and last_revocation_date ar params: usdot_number*, since_date |
screen_carrier_identity | Free triage screen for a carrier: whether it's flagged under FMCSA's
own chameleon-carrier methodology, how big its identity cluster is,
and how many linked carriers carry a motive — with no member detail.
Call check_carrier_identity (paid) for that.
This is the entire discovery/sales motion in an agent-only channel,
not a discount tier — free by design (Identity-API-Revision-
2026-09-06.md Secti params: usdot_number* |
check_carrier_identity | Full identity-linkage detail for a carrier: why it's flagged and how
confident that is. Priced meaningfully above the free
screen_carrier_identity — call that first if you only need the flag
and a count.
Never names or points at another carrier (redesigned 2026-09-18 — see
schemas.IdentityAssessment's docstring): no linked USDOT number, legal
name, or shared-identifier hash. A linked carrier's ow params: usdot_number* |
check_address_consistency | How many distinct business addresses and phones this carrier
reports across FMCSA's independent records of it (census
registration, licensing and insurance filings, and its own
self-reported crash records). Mailing addresses are excluded —
differing from the physical address there is normal.
Paid. Cheaper than either identity tool; one row, no graph.
params: usdot_number* |
confirm_identity_link | Confirms or denies that two carriers YOU ALREADY SUSPECT are linked
in fact share an identity cluster — the lower-risk alternative to
check_carrier_identity's removed linked_carriers field (see
schemas.IdentityAssessment's docstring for why that was removed
2026-09-18).
This never discloses a carrier's identity to a caller who didn't
already have it: both usdot_number_a and usdot_number_b are sup params: usdot_number_a*, usdot_number_b* |
check_applicant_against_roster | Screens one applicant carrier against a roster of carriers you
already do business with (or are vetting) — the batch generalization
of confirm_identity_link, for the real-world case of catching a
carrier that was previously cut from your network (revoked,
suspended, or otherwise let go) trying to re-enter under a new USDOT
number. usdot_number is the applicant; roster_usdot_numbers is your
own lis params: usdot_number*, roster_usdot_numbers* |
get_identity_sample | Free, unauthenticated sample of identity/fraud responses, covering
both screen_carrier_identity's free IdentityScreen shape and
check_carrier_identity's paid IdentityAssessment shape.
Lets a buying agent see the paid response shape and evaluate data
quality before spending USDC on check_carrier_identity.
params: none |
find_carrier_by_mc | Free. Finds the USDOT number for an operating-authority docket number
(MC, MX or FF), so a broker holding the MC number from a rate
confirmation can reach the other tools, which take a USDOT number.
mc_number may be written "MC123456", "MC-123456", "mc 123456" or just
"123456" (a bare number is taken as MC); zero-padding is ignored, because
FMCSA's own files disagree on it. authority_holder_usdot params: mc_number* |
check_roster_changes | Which carriers on your roster changed on or after a date, and what
changed: authority, insurance, out-of-service and the other tracked
fields, each with its old and new value. Paid, metered: a base price plus
a per-roster-entry price, both shown in get_catalog.
roster_usdot_numbers is your own list of USDOT numbers (non-empty, at
most settings.roster_screen_max_size distinct entries, currently 10 params: roster_usdot_numbers*, since* |
get_carrier_selection_record | One dated, hashed record of what public FMCSA data shows about a
carrier, built for a broker's carrier-vetting file. Paid, flat price.
It gathers, in one response: the carrier's current profile (authority,
insurance flags, FMCSA safety rating and its date, out-of-service
orders, fleet and classifications, MCS-150 filing date, first authority
grant, revocation, suspension and reinstatement history params: usdot_number* |
get_inspection_crash_summary | A carrier's roadside inspection, violation and crash summary on its
own. Paid, flat price; billed whenever the USDOT number resolves, even if
the carrier had no inspections (that is the finding). An unknown number is
a free not_found.
inspections (SMS data, a 24-month window that ends weeks before today:
read window_end): inspection counts by driver and vehicle, out-of-service
counts and rates (F params: usdot_number* |
check_broker_authority | Does this broker hold active broker authority, and what does FMCSA's
record say around it? Give exactly one of mc_number (the broker's MC
docket, written MC123456, MC-123456 or 123456) or usdot_number. Paid, flat
price; billed whenever the carrier resolves, including when it holds no
broker authority (that is the answer). An unknown docket or USDOT number
is a free not_found; giving neither or bot params: mc_number, usdot_number |
Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.