Skip to main content
Glama
joakes90

vin-decode-mcp

by joakes90

vin-decode-mcp

VINs dekodieren und Fahrzeugdaten aus einer kuratierten NHTSA-vPIC-Datenbank abfragen – unterstützt durch das Model Context Protocol.

Ein eigenständiger, offline-fähiger MCP-Server, der es LLMs ermöglicht, Fahrzeugidentifizierungsnummern (VINs) zu dekodieren und Marken, Modelle und Fahrzeugspeszifikationen mithilfe der Daten von NHTSA vPIC nachzuschlagen.

pip install vin-decode-mcp
vin-decode-mcp  # Start the MCP server

Warum?

  • Offline: Funktionert ohne Internetzugang. Die kuratierte SQLite-Datenbank (~4,5 MB) ist in sich geschlossen.

  • Keine Ratenbegrenzung: Anders als beim direkten Aufruf der vPIC-API sind lokale Abfragen unbegrenzt.

  • Schnell: Der Musterabgleich mit der SQLite-Datenbank dauert Mikrosekunden.

  • LLM-nativ: Tools mit umfangreichen Docstrings, Schema-Ressourcen und strukturierter JSON-Ausgabe.

  • Offene Daten: Die NHTSA-vPIC-Daten sind offene Daten der US-Regierung — kostenlos, kein API-Schlüssel erforderlich.

Related MCP server: VIN MCP

Datenabdeckung

  • US-Marktfahrzeuge, Modelljahr 1981 und späer

  • 534 Marken, 9.175 Modelle, 88.140 VIN-Muster

  • Personenkraftwagen, Lastkraftwagen, MPVs, Motorräder, Geländefahrzeuge

  • Ausgeschlossen: Busse, Anhänger, Niedriggeschwindigkeitsfahrzeuge, unvollständige Fahrzeuge

Nur Spezifikationen — diese Datenbank enthält keine Historie zu Titel, Unfall, Kilometerstand oder Diebstahl (dafür sind NMVTIS-/kommerzielle Datenquellen erforderlich).

Schnellstart

Installation

pip install vin-decode-mcp

Oder aus dem Quellcode:

git clone https://github.com/<org>/vin-decode-mcp.git
cd vin-decode-mcp
pip install -e .

Ausführen

# Default: stdio transport (for Claude Desktop, Cursor, etc.)
vin-decode-mcp

# HTTP transport
vin-decode-mcp --transport http --port 8765

Verwenden mit Claude Desktop

Fügen Sie Folgendes in ~/.config/claude-desktop/config.json ein (oder in ~/Library/Application Support/claude-desktop/config.json unter macOS):

{
  "mcpServers": {
    "vin-decode": {
      "command": "vin-decode-mcp"
    }
  }
}

Starte Sie Claude Desktop neu. Das Modell kann nun VIN-Dekodierungstools in Unterhaltungen verwenden.

Verfügbare Tools

Tool

Beschreibung

decode_vin(vin, model_year?)

Dekodiert eine VIN → Marke, Modell, Jahr, Fahrzeugtyp

decode_partial_vin(pattern, limit?)

Gleicht eine partielle VIN mit *- Wildcards ab

get_all_makes()

Listet alle Fahrzeugmarken auf

get_models_for_make(make, vehicle_type?)

Listet Modelle für eine Marke auf

get_model_years(make, model)

Ermittelt den Produktionsjahresbereich

get_wmi_info(wmi)

Dekodiert eine WMI → Herstellerinformationen

get_vehicle_types()

Listet verfügbare Fahrzeugtypen auf

get_make_vehicle_types(make)

Listet Fahrzeugtypen für eine Marke auf

Beispiele

>>> decode_vin("1HGCM82633A004352")
{
  "vin": "1HGCM82633A004352",
  "make": "Honda",
  "model": "Accord",
  "year": 2003,
  "vehicle_type": "Passenger Car",
  "wmi": "1HG",
  "confidence": "full"
}

>>> get_model_years("Porsche", "911")
{"year_from": 1981, "year_to": null}

>>> decode_partial_vin("5UXWX7C5*BA")
[{"make": "BMW", "model": "X5", "year": 2011, "confidence": "partial_match"}]

Datenbank

Download

Die kompilierte Datenbank wird auf Hugging Face gehostet:

Datensatz: https://huggingface.co/datasets/vin-decode-mcp/vpic-datenbank Direkter Download: https://huggingface.co/datasets/vin-decode-mcp/vpic-datenbank/resolve/main/vpic_decode.db

Eigener Datenbankpfad

# Set via environment variable
export VIN_MCP_DB_PATH=/path/to/vpic_decode.db
vin-decode-mcp

# Or via CLI flag
vin-decode-mcp --db-path /path/to/vpic_decode.db

Neuaufbau

Die Datenbank wird etwa alle 6–12 Monate aus den eigenständigen PostgreSQL-Datenbanken der NHTSA neu aufgebaut:

# Requires PostgreSQL installed (pg_restore, psql)
bash tools/rebuild.sh

# Or step by step:
# 1. Download NHTSA data: https://vpic.nhtsa.dot.gov/Downloads/
# 2. Convert to SQLite
python3 tools/convert_to_sqlite.py --input dump.sql --output vpic_lite.db
# 3. Build curated database
python3 tools/build_db.py --source vpic_lite.db --output vpic_decode.db

Anweisungen zur Hugging-Face-Einrichtung finden Sie in docs/hf-setup.md.

Datenquelle und Quellenangabe

Fahrzeugdaten stammen aus NHTSA vPIC — dem Vehicle Product Information Catalog and Vehicle Listing der National Highway Traffic Safety Administration. Die NHTSA ist eine Behörde der US-Regierung.

  • Datenlizenz: Werk der US-Regierung (gemeinfrei)

  • API: Kein API-Schlüssel und keine Registrierung erforderlich.

  • Aktualisierungsintervall: ~6–12 Monate

  • Fehler melden: Kontaktieren Sie den NHTSA Manufacturer Helpdesk unter manufacturerinfo@dot.gov oder 1-888-399-3277

Architektur

User / LLM Agent
       │
       ▼  MCP (stdio / HTTP)
┌──────────────────┐
│  vin-decode-mcp  │  pip install vin-decode-mcp
│  (FastMCP server)│  env: VIN_MCP_DB_PATH=/path/to/vpic_decode.db
└────────┬─────────┘
         │  sqlite3 (mode=ro)
         ▼
┌──────────────────┐
│ vpic_decode.db     │  ~4.5 MB, curated
│  (Hugging Face)  │  makes + models + WMI + VIN patterns
└──────────────────┘
         ▲
         │  rebuilds from
┌──────────────────┐
│ NHTSA vPIC PG DB │  69 MB, official
│ (NHTSA website)  │  refreshed 2x/year
└──────────────────┘

Projektstruktur

vin-decode-mcp/
├── src/vin_decode_mcp/
│   ├── __init__.py              # Package init
│   ├── server.py                # FastMCP server with all tools
│   ├── database.py              # SQLite layer + VIN decoder
│   └── cli.py                   # CLI entry point
├── tools/
│   ├── build_db.py              # Pipeline orchestrator
│   ├── convert_to_sqlite.py     # PG → SQLite converter
│   ├── rebuild.sh               # Full rebuild script
│   ├── build_db.py              # Curated DB builder (orchestrator for the pipeline)
│   ├── curation.json            # Make/model curation rules
│   ├── overlay.json             # Grey-import classic additions
│   └── README.md                # Rebuild instructions
├── tests/
│   ├── conftest.py              # Test fixtures
│   ├── test_decode.py           # VIN decode canary tests
│   ├── test_server.py           # Bulk lookup tests
│   └── fixtures/
│       ├── build_test_db.py     # Test database builder
│       └── test_vpic.db         # Minimal test database
├── .github/workflows/
│   ├── ci.yml                   # CI: test + lint
│   └── rebuild-db.yml           # Scheduled DB rebuild
├── docs/
│   └── hf-setup.md              # Hugging Face setup guide
├── pyproject.toml
├── LICENSE
├── README.md
└── vpic_pare_down.py            # Pare-down pipeline (original)

Entwicklung

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
python -m pytest tests/ -v

# Lint
python -m ruff check src/ tests/

# Format
python -m ruff format src/ tests/

Vergleich mit anderen Lösungen

vin-decode-mcp

NHTSA vPIC API

vin-mcp (NLMA)

Transport

Lokale SQLite-Datenbank

HTTP REST

HTTP REST

Offline

Ratenbegrenzung

Nein

Ja

Ja

Datengröße

~4,5 MB

N/A

N/A

VIN-Felder

Marke + Modell + Jahr

~130 Felder

~130 Felder

Marken/Modelle

✅ 534/9.175

✅ Vollständiger Katalog

✅ Vollständiger Katalog

Installation

pip install

Keine

pip install

Lizenz

MIT-Lizenz — Der Code ist MIT-lizenziert. Die Daten sind gemeinfreie Werke der US-Regierung.

Siehe LICENSE für Details.

Mitwirken

Beiträge sind willkommen! Bitte:

  1. Forken Sie das Repository und erstellen Sie einen Feature-Branch.

  2. Fügen Sie Tests für die neue Funktionalität hinzu.

  3. Stellen Sie sicher, dass die CI erfolgreich durchläuft.

  4. Reichen Sie einen Pull Request ein.

Eröffnen Sie bei größeren Änderungen zuerst ein Issue, um das Vorgehen zu besprechen.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    C
    quality
    D
    maintenance
    Enables access to comprehensive vehicle information including VIN decoding, license plate OCR, vehicle history checks (theft, title, salvage records), market valuations, specifications, and warranty data for vehicles across North America and Europe.
    6
    61
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive vehicle reports by aggregating data from multiple public sources to decode VINs, check recalls, and view safety ratings. It enables users to validate VINs locally and retrieve technical specifications, fuel economy, and vehicle photos without requiring API keys.
    18
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    Exposes a connected-vehicle OBD-II/telematics platform to AI agents, enabling vehicle health scoring, live data queries, DTC decoding, maintenance prediction, and gated remote commands via a pluggable data layer.
    9

View all related MCP servers

Related MCP Connectors

  • Machine-readable utilities and datasets for AI agents.

  • Neutral freight reference + validation layer for AI agents: ADR, HS, UN/LOCODE, freight math

  • 500+ deterministic tools for AI agents: math, conversion, validation, hashing, encoding, date/time.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/joakes90/vin-decode-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server