NHTSA Crash API · Capability

NHTSA Crash Data API — Cases

NHTSA Crash Data API — Cases. 2 operations. Lead operation: Get case details. Self-contained Naftiko capability covering one Nhtsa Crash Api business surface.

Run with Naftiko Nhtsa Crash ApiCases

What You Can Do

GET
Getcasedetails — Get case details
/v1/crashes/getcasedetails
GET
Getcaselist — Get case list
/v1/crashes/getcaselist

MCP Tools

get-case-details

Get case details

read-only idempotent
get-case-list

Get case list

read-only idempotent

Capability Spec

nhtsa-crash-data-cases.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: NHTSA Crash Data API — Cases
  description: 'NHTSA Crash Data API — Cases. 2 operations. Lead operation: Get case details. Self-contained Naftiko capability
    covering one Nhtsa Crash Api business surface.'
  tags:
  - Nhtsa Crash Api
  - Cases
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    NHTSA_CRASH_API_API_KEY: NHTSA_CRASH_API_API_KEY
capability:
  consumes:
  - type: http
    namespace: nhtsa-crash-data-cases
    baseUri: https://crashviewer.nhtsa.dot.gov/CrashAPI
    description: NHTSA Crash Data API — Cases business capability. Self-contained, no shared references.
    resources:
    - name: crashes-GetCaseDetails
      path: /crashes/GetCaseDetails
      operations:
      - name: getcasedetails
        method: GET
        description: Get case details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: stateCase
          in: query
          type: string
          description: State case number.
          required: true
        - name: caseYear
          in: query
          type: integer
          required: true
        - name: state
          in: query
          type: integer
          description: State FIPS code.
          required: true
        - name: format
          in: query
          type: string
    - name: crashes-GetCaseList
      path: /crashes/GetCaseList
      operations:
      - name: getcaselist
        method: GET
        description: Get case list
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: states
          in: query
          type: string
          description: State FIPS code(s), comma separated.
          required: true
        - name: fromCaseYear
          in: query
          type: integer
          description: Beginning case year.
          required: true
        - name: toCaseYear
          in: query
          type: integer
          description: Ending case year.
          required: true
        - name: minNumOfVehicles
          in: query
          type: integer
          description: Minimum number of vehicles involved.
        - name: maxNumOfVehicles
          in: query
          type: integer
          description: Maximum number of vehicles involved.
        - name: format
          in: query
          type: string
  exposes:
  - type: rest
    namespace: nhtsa-crash-data-cases-rest
    port: 8080
    description: REST adapter for NHTSA Crash Data API — Cases. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/crashes/getcasedetails
      name: crashes-getcasedetails
      description: REST surface for crashes-GetCaseDetails.
      operations:
      - method: GET
        name: getcasedetails
        description: Get case details
        call: nhtsa-crash-data-cases.getcasedetails
        with:
          stateCase: rest.stateCase
          caseYear: rest.caseYear
          state: rest.state
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/crashes/getcaselist
      name: crashes-getcaselist
      description: REST surface for crashes-GetCaseList.
      operations:
      - method: GET
        name: getcaselist
        description: Get case list
        call: nhtsa-crash-data-cases.getcaselist
        with:
          states: rest.states
          fromCaseYear: rest.fromCaseYear
          toCaseYear: rest.toCaseYear
          minNumOfVehicles: rest.minNumOfVehicles
          maxNumOfVehicles: rest.maxNumOfVehicles
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: nhtsa-crash-data-cases-mcp
    port: 9090
    transport: http
    description: MCP adapter for NHTSA Crash Data API — Cases. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: get-case-details
      description: Get case details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: nhtsa-crash-data-cases.getcasedetails
      with:
        stateCase: tools.stateCase
        caseYear: tools.caseYear
        state: tools.state
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.
    - name: get-case-list
      description: Get case list
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: nhtsa-crash-data-cases.getcaselist
      with:
        states: tools.states
        fromCaseYear: tools.fromCaseYear
        toCaseYear: tools.toCaseYear
        minNumOfVehicles: tools.minNumOfVehicles
        maxNumOfVehicles: tools.maxNumOfVehicles
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.