Featured

Deploy OpenClaw in 60 seconds — 20% off logoDeploy OpenClaw in 60 seconds — 20% off

Launch OpenClaw on Hostinger in about 60 seconds and keep your agent live 24/7. Our referral link gives you 20% off, no coupon code needed.

Launch on Hostinger
Run your Hermes agent on Hostinger, fully managed logoRun your Hermes agent on Hostinger, fully managed

Launch Hermes on Hostinger in one click, fully managed, no VPS knowledge needed. Use code ZACAARON10 for 10% off.

Launch on Hostinger
Crawl and scrape any site into clean data, 10% off logoCrawl and scrape any site into clean data, 10% off

Firecrawl crawls and scrapes any site into clean markdown for your agent. Get 1,000 free credits, and new users get 10% off their first purchase.

Try Firecrawl free
Your own AI agent, running 24/7 with QwikClaw logoYour own AI agent, running 24/7 with QwikClaw

QwikClaw sets up and runs an always-on OpenClaw agent for you. One click, no config files, no server setup.

Deploy now
One API to scrape, enrich, and extract the internet. logoOne API to scrape, enrich, and extract the internet.

Context.dev gives your agents a single API to scrape, enrich, and extract live web data — no proxies, no parsers, no maintenance.

Start building free
SetupClaw: done-for-you OpenClaw for founders & exec teams logoSetupClaw: done-for-you OpenClaw for founders & exec teams

White-glove OpenClaw for founders and exec teams (4–50+ employees): we install, harden, integrate your tools, and maintain it — secured from day one.

Get it set up for you
SEO data APIs for your agent, $1 free credit logoSEO data APIs for your agent, $1 free credit

DataForSEO gives your agent live access to SERP results, keyword data, backlinks, and on-page SEO data through one API. New accounts get a $1 credit, good for up to 20,000 keyword or backlink lookups.

Try DataForSEO free
Reach 47,000+ AI builders

A flat monthly placement in front of developers actively installing AI tools. No lock-in, cancel anytime.

Advertise here

Works with

Claude CodeClaude DesktopCursorVS CodeClineCodex CLIOpenClaw+ any MCP client

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

Vehicle safety data from NHTSA — recalls, complaints, crash ratings, investigations, VIN decoding.

README.md

<div align="center"> <h1>@cyanheads/nhtsa-vehicle-safety-mcp-server</h1> <p><b>Decode VINs, search recalls, complaints, crash ratings, and investigations via MCP. STDIO or Streamable HTTP.</b> <div>7 Tools</div> </p> </div>

<div align="center">

![Version](./CHANGELOG.md) ![License](./LICENSE) ![Docker](https://github.com/users/cyanheads/packages/container/package/nhtsa-vehicle-safety-mcp-server) ![MCP SDK](https://modelcontextprotocol.io/) ![npm](https://www.npmjs.com/package/@cyanheads/nhtsa-vehicle-safety-mcp-server) ![TypeScript](https://www.typescriptlang.org/) ![Bun](https://bun.sh/)

</div>

<div align="center">

![Install in Claude Desktop](https://github.com/cyanheads/nhtsa-vehicle-safety-mcp-server/releases/latest/download/nhtsa-vehicle-safety-mcp-server.mcpb) ![Install in Cursor](https://cursor.com/en/install-mcp?name=nhtsa-vehicle-safety-mcp-server&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjeWFuaGVhZHMvbmh0c2EtdmVoaWNsZS1zYWZldHktbWNwLXNlcnZlciJdfQ==) ![Install in VS Code](https://vscode.dev/redirect?url=vscode:mcp/install?%7B%22name%22%3A%22nhtsa-vehicle-safety-mcp-server%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40cyanheads/nhtsa-vehicle-safety-mcp-server%22%5D%7D)

![Framework](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)

</div>

<div align="center">

Public Hosted Server: https://nhtsa.caseyjhand.com/mcp

</div>

---

Tools

Seven tools for querying NHTSA vehicle safety data:

| Tool Name | Description | |:----------|:------------| | nhtsa_get_vehicle_safety | Comprehensive safety profile combining crash test ratings, recalls, and complaint summary with per-section availability status. | | nhtsa_search_recalls | Search recall campaigns by vehicle or campaign number with optional date filtering. | | nhtsa_search_complaints | Consumer safety complaints with component breakdown and severity stats. | | nhtsa_get_safety_ratings | NCAP crash test ratings and ADAS feature availability. | | nhtsa_decode_vin | Decode VINs for make, model, year, engine, safety equipment (single or batch up to 50). | | nhtsa_search_investigations | Search NHTSA defect investigations (PE, EA, DP, RQ, AQ, and more) with cached index. | | nhtsa_lookup_vehicles | Look up valid makes, models, vehicle types, and manufacturer details from VPIC. |

nhtsa_get_vehicle_safety

Composite safety profile — the default tool when asked about vehicle safety, reliability, or purchase decisions.

  • Combines NCAP crash test ratings, recall history, and complaint summary in a single response
  • Frontal crash, side crash, and rollover ratings per vehicle variant
  • Recall consequence text plus the do-not-drive, park-outside, and over-the-air-update advisories
  • Complaint breakdown by component with crash, fire, injury, and death counts
  • Returns sectionStatus plus warnings so upstream outages are not mistaken for a clean record

---

nhtsa_search_recalls

Search recall campaigns by vehicle or campaign number.

  • Look up by make/model/year or by specific NHTSA campaign number
  • Campaign lookups return every make/model the campaign covers, plus the ODI investigation that preceded it
  • Optional date range filtering (ISO 8601)
  • Includes do-not-drive advisories, park-outside warnings, and OTA update availability

---

nhtsa_decode_vin

Decode Vehicle Identification Numbers for manufacturing and safety details.

  • Single VIN or batch decode up to 50 VINs
  • Partial VINs accepted — use * for unknown positions
  • Preserves sparse VPIC fields instead of filling missing data with empty placeholders

---

nhtsa_search_investigations

Search NHTSA defect investigations.

  • Investigation types: Preliminary Evaluations (PE), Engineering Analyses (EA), Defect Petitions (DP), Recall Queries (RQ), Audit Queries (AQ), and additional ODI codes (SQ, EQ, RP, and others)
  • Free-text search across investigation IDs, subjects, and summaries, plus structured make, model, and component filters
  • nhtsaId fetches one investigation by its exact ID — the reverse of the recall link, closing the campaign-to-investigation round trip
  • Sourced from NHTSA's ODI bulk file (FLAT_INV.zip) — the first query downloads and parses it (~10s), subsequent queries use the cached index (24h TTL, matching the file's daily refresh)
  • Returns up to 25 investigations per page; the response echoes offset/limit and the offset for the next page

---

nhtsa_search_complaints

Search consumer safety complaints filed with NHTSA.

  • Component breakdown with crash, fire, injury, and death counts
  • Optional component filter (e.g., "ENGINE", "AIR BAGS")
  • Returns up to 50 most recent complaints sorted by filing date
  • An incident date the complaint's own filing date or model year rules out is disclosed as unreliableIncidentDate rather than served as the incident date

---

nhtsa_get_safety_ratings

NCAP crash test ratings and ADAS feature data.

  • Frontal crash, side crash (barrier + pole), and rollover ratings
  • ADAS features: ESC, forward collision warning, lane departure warning
  • Accepts either make/model/year or a follow-up vehicleId from earlier NCAP results
  • Counts of complaints, recalls, and investigations on file

---

nhtsa_lookup_vehicles

Reference lookups against NHTSA's VPIC database.

  • Four operations: makes, models, vehicle_types, manufacturer
  • makes supports limit and offset pagination for the full VPIC catalog
  • Use to resolve ambiguous vehicle names or verify correct spelling
  • Models can be filtered by year; manufacturers support partial match
  • manufacturer pages VPIC up to a 500-record ceiling and discloses when a broad partial name hits it

Features

Built on @cyanheads/mcp-ts-core:

  • Declarative tool definitions — single file per tool, framework handles registration and validation
  • Unified error handling across all tools
  • Pluggable auth (none, jwt, oauth)
  • Swappable storage backends: in-memory, filesystem, Supabase, Cloudflare KV/R2/D1
  • Structured logging with optional OpenTelemetry tracing
  • Runs locally (stdio/HTTP) from the same codebase

NHTSA-specific:

  • Type-safe client wrapping four NHTSA JSON APIs with retry logic and sparse-field normalization, plus a streaming parser for the ODI investigations bulk file
  • Investigation index caching (24h TTL) for fast repeated queries
  • No API key required — all NHTSA APIs are public

Getting started

Public Hosted Instance

A public instance is available at https://nhtsa.caseyjhand.com/mcp — no installation required. Point any MCP client at it via Streamable HTTP:

{
  "mcpServers": {
    "nhtsa-vehicle-safety-mcp-server": {
      "type": "streamable-http",
      "url": "https://nhtsa.caseyjhand.com/mcp"
    }
  }
}

Self-Hosted / Local

Add the following to your MCP client configuration file:

{
  "mcpServers": {
    "nhtsa-vehicle-safety-mcp-server": {
      "type": "stdio",
      "command": "bunx",
      "args": ["@cyanheads/nhtsa-vehicle-safety-mcp-server@latest"],
      "env": {
        "MCP_TRANSPORT_TYPE": "stdio",
        "MCP_LOG_LEVEL": "info"
      }
    }
  }
}

Or with npx (no Bun required):

{
  "mcpServers": {
    "nhtsa-vehicle-safety-mcp-server": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@cyanheads/nhtsa-vehicle-safety-mcp-server@latest"],
      "env": {
        "MCP_TRANSPORT_TYPE": "stdio",
        "MCP_LOG_LEVEL": "info"
      }
    }
  }
}

Or with Docker:

{
  "mcpServers": {
    "nhtsa-vehicle-safety-mcp-server": {
      "type": "stdio",
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "MCP_TRANSPORT_TYPE=stdio", "ghcr.io/cyanheads/nhtsa-vehicle-safety-mcp-server:latest"]
    }
  }
}

For Streamable HTTP, set the transport and start the server:

MCP_TRANSPORT_TYPE=http MCP_HTTP_PORT=3010 bun run start:http
# Server listens at http://localhost:3010/mcp

Prerequisites

Installation

  1. Clone the repository:
git clone https://github.com/cyanheads/nhtsa-vehicle-safety-mcp-server.git
  1. Navigate into the directory:
cd nhtsa-vehicle-safety-mcp-server
  1. Install dependencies:
bun install

Configuration

No API keys required — all NHTSA APIs are public.

| Variable | Description | Default | |:---------|:------------|:--------| | MCP_TRANSPORT_TYPE | Transport: stdio or http. | stdio | | MCP_HTTP_HOST | HTTP server host. | 127.0.0.1 | | MCP_HTTP_PORT | HTTP server port. | 3010 | | MCP_HTTP_ENDPOINT_PATH | HTTP endpoint path. | /mcp | | MCP_AUTH_MODE | Auth mode: none, jwt, or oauth. | none | | MCP_LOG_LEVEL | Log level (RFC 5424). | info |

Data sources

All data comes from NHTSA's public APIs and bulk files:

  • Recalls APIapi.nhtsa.gov/recalls
  • Complaints APIapi.nhtsa.gov/complaints
  • Safety Ratings APIapi.nhtsa.gov/SafetyRatings
  • Investigations bulk filestatic.nhtsa.gov/odi/ffdd/inv/FLAT_INV.zip
  • VPIC APIvpic.nhtsa.dot.gov/api/vehicles

Running the server

Local development

bun run devcheck  # Lints, formats, type-checks, and more
bun run test      # Runs the test suite

Production

bun run build
bun run start:stdio   # Production stdio
bun run start:http    # Production HTTP

Docker

docker build -t nhtsa-vehicle-safety-mcp-server .
docker run -p 3010:3010 nhtsa-vehicle-safety-mcp-server

Project structure

| Directory | Purpose | |:----------|:--------| | src/index.ts | Server entry point — createApp() registration. | | src/mcp-server/tools/definitions/ | Tool definitions (*.tool.ts). | | src/services/nhtsa/ | NHTSA API client and ODI bulk-file parser with field normalization. |

Development guide

See CLAUDE.md for development guidelines and architectural rules. The short version:

  • Handlers throw, framework catches — no try/catch in tool logic
  • Use ctx.log for logging
  • One tool per file, nhtsa_ prefix for all tool names

Contributing

Issues and pull requests are welcome. Run checks before submitting:

bun run devcheck
bun run test

License

Apache-2.0 — see LICENSE for details.

See related servers & alternatives →

Related MCP servers

Browse all →

Related guides

Hand-picked reading to help you choose and use Other servers.