Skip to main content
Glama
rleefers

Dutch Vehicle Context

by rleefers

Dutch Vehicle Context — MCP-Server & API für niederländische Kennzeichen

Ein Kennzeichen rein, ein verknüpfter Fahrzeugbericht raus. APK-Historie, Mängelpunkte mit lesbarer Beschreibung, das offizielle Urteil zum Kilometerstand und die vollständige Rückrufkette — einschließlich dessen, was kaputtgehen kann, wie gefährlich das ist und was die Behebung ist.

Läuft als Remote-MCP-Server und als normale HTTPS-API. Kostenlos, kein API-Schlüssel, keine Registrierung.

https://vehicle-context.tradebrite.nl

📖 Dokumentation: https://tradebrite.nl/vehicle-context/


In 10 Sekunden anbinden

Add dutch-vehicle-context MCP server to Cursor

Claude (Web oder Desktop, jedes Abonnement): Customize → Connectors → + → Add custom connector, https://vehicle-context.tradebrite.nl/mcp einfügen.

ChatGPT: Custom Connectors erfordern den Developer Mode (Pro/Team/Enterprise/Edu); mit Plus geht es nicht — dort die HTTPS-API nutzen.

Claude Code:

claude mcp add --transport http vehicle-context https://vehicle-context.tradebrite.nl/mcp

Oder in deiner MCP-Konfiguration (Claude Desktop, Cursor, Windsurf, …):

{
  "mcpServers": {
    "vehicle-context": {
      "type": "http",
      "url": "https://vehicle-context.tradebrite.nl/mcp"
    }
  }
}

Danach kannst du fragen: „Was weißt du über das Kennzeichen 01-TH-FD, ist das ein kluger Kauf?"

Lieber einfach HTTP:

curl "https://vehicle-context.tradebrite.nl/v1/vehicle/context?plate=01-TH-FD"

Related MCP server: Vehicle Database MCP Server

Warum es das gibt

Alle zugrunde liegenden Daten sind öffentlich und kostenlos. Das Problem ist die Zersplitterung: Die Antwort auf eine normale Frage verteilt sich über elf Datensätze und zwei Codetabellen, und die interessantesten Schlussfolgerungen stehen in keinem einzigen davon.

Zwei Beispiele aus der Praxis.

Die Rückrufkette. Das Basisregister meldet zu einer offenen Aktion nicht mehr als Ja. Will man wissen, um welche Aktion es sich handelt, muss man vom Kennzeichen zur Referenzcode (t49b-isb7), zur Aktionsbeschreibung (j9yg-7rg9), zur Gefahrenliste (9ihi-jgpf). Beim Testfahrzeug ergab das zwei Aktionen: eine abgeschlossene aus 2018 und eine offene aus 2024 über einen Airbag-Gasgenerator, der bei einem Unfall explodieren kann. Wer die erste Zeile nimmt, meldet die falsche.

Wiederkehrende Mängel. Eine einzelne Beanstandung sagt wenig — das wird repariert. Dieselbe Beanstandung in drei aufeinanderfolgenden Jahren sagt, dass etwas strukturell nicht in Ordnung ist. Diese Schlussfolgerung steht nirgendwo; sie entsteht erst, indem man die Einträge pro Prüfungsrunde gruppiert. Und Vorsicht vor der Falle, die uns fast erwischt hätte: Eine Nachprüfung nach der Reparatur ist ein eigenes Datum mit denselben Mängeln. Nach Datum zu zählen erzeugt Fehlalarm. Siehe src/context.ts.

Was du zurückbekommst

Eine JSON-Antwort (~10 kB) mit identity, technical, fuel, inspection, defects, odometer, recalls, status_flags, value, signals und provenance.

Die Ebene, die das für einen Agenten nutzbar macht, ist signals — Beobachtungen, die nie einen Mangel feststellen, sortiert nach Schweregrad, jeweils mit einer Empfehlung und der Begründung:

Signal

Bedeutung

open_recall

Offene Rückrufaktion, mit Defekt, Gefahr und Behebung

recurring_defect

Derselbe Mängepunkt in mehreren Prüfungsrunden

odometer_illogical

Register stuft den Kilometerstand als unlogisch ein

odometer_no_judgement

Es gibt kein Urteil — das ist etwas anderes als eine Freigabe

imported_vehicle

Historie vor dem Import fehlt im NL-Register

emission_zone_restricted

Diesel unter EURO 5

apk_expired, not_insured, exported, taxi_history, source_unavailable

…

Was es nicht tut

Der Diebstahlstatus ist nicht enthalten, und das ist keine Auslassung. Ob ein Fahrzeug als gestohlen oder vermisst registriert ist, wird grundsätzlich nicht als offene Daten bereitgestellt. Jede Antwort meldet das explizit, auch wenn der Rest sauber ist — sonst liest sich ein vollständig wirkender Bericht ohne Diebstahlvermerk als „nicht gestohlen", und das ist die gefährlichste Schlussfolgerung, die jemand aus diesen Daten ziehen kann.

Außerdem: keine Bewertung, keine technische Prüfung, keine Kaufberatung. Keine Schadenhistorie, keine Anzahl der Eigentümer, kein aktueller Kilometerstand — die stehen nicht in den offenen Registern.

Designprinzipien

  1. Nie einen fehlenden Wert ausfüllen, nur weil er wahrscheinlich wirkt. Jede Quelle trägt einen Status: ok / not_found / empty / not_published / unavailable / error.

  2. FAKT ≠ SIGNAL ≠ UNBEKANNT.

  3. Was nicht öffentlich ist, wird explizit als unbekannt gemeldet.

  4. Ein MCP-Tool, nicht dutzende. Unsere Toolliste ist 2.347 Zeichen lang. Ein breiter niederländischer Open-Data-MCP, den wir danebenlegten: 55.452 Zeichen für 64 Tools — etwa 15.000 Tokens, die ein Agent einlesen muss, bevor er etwas fragen kann.

  5. Eine fehlschlagende Quelle scheitert sichtbar. Stille darf nicht wie „nichts zu melden" wirken.

  6. Jede abgeleitete Schlussfolgerung trägt ihre Begründung in based_on.

Selbst betreiben

npm install
npx wrangler deploy      # vul eerst je eigen account_id in wrangler.toml
node regression.mjs      # acht gevallen tegen de live dienst

Keine Schlüssel nötig — alle Quellen sind öffentlich. Keine vorberechneten Daten im Bundle, alles wird live abgefragt (240–480 ms pro Quelle, parallel).

Quellen und Lizenz

Elf Datensätze aus dem niederländischen Kennzeichenregister und dem Rückrufregister, alle verfügbar unter Creative Commons Zero. Achtung: Der Dateninhaber gestattet eine Quellenangabe bei der Wiederverwendung ausdrücklich nicht und verbietet die Verwendung von Name und Logo, daher stehen diese bewusst nicht darin — nur die neutrale Registerbezeichnung plus die Datensatz-ID.

Der Dateninhaber gibt keine Garantie auf Verfügbarkeit und darf Datensätze ohne Angabe von Gründen zurückziehen. Performance ist Fair Use; daher das Rate Limit von 10 Anfragen pro 10 s und 60 pro Minute pro IP beim gehosteten Dienst.

Code: MIT, siehe LICENSE.

Datenschutz

Ein Kennzeichen kann ein personenbezogenes Datum sein. Der gehostete Dienst protokolliert keine Kennzeichen und keine IP-Adressen — eine Logdatei mit Kennzeichen plus Zeitstempeln würde genau die Verknüpfung herstellen, die in den Quelldaten fehlt. Wohl: Marke, Baujahr, Fahrzeugart und die ausgegebenen Signale.

Verwandt

Dutch Property Context — derselbe Ansatz für niederländische Wohnungen: Adresse rein, Baujahr, Energielabel, Nachbarschaftswerte, Denkmalstatus und Schulen raus.


Gebaut von Tradebrite BV · info@tradebrite.nl

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    C
    maintenance
    Provides tools to query Dutch vehicle registration data through the official RDW open API, allowing users to look up vehicle information by license plate, retrieve fuel/emissions data, and search vehicles by brand and model.
    1
    14 npm
    1
    MIT
  • 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.
    61
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying the official Brazilian vehicle registration (CRLV-e) system with a single read-only tool. Works with any MCP client, featuring prepaid pay-per-use pricing.
    MIT