Dutch Property Context — MCP server & API voor Nederlandse adressen

MCP serverDev tools

Once this is added, your AI can look up property details for addresses in the Netherlands. Ask about an address and it puts together a report with the build year, energy label, neighbourhood, monument status, and schools. Useful when you are researching a home or getting to know an area.

Use Dutch Property Context — MCP server & API voor Nederlandse adressen in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Dutch Property Context — MCP server & API voor Nederlandse adressen and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use Dutch Property Context to get verified property context

Details

Available today. Use it from your connected AI after setup.

After adding it, give your AI a Dutch address and ask for the property report. Try an address you already know to see what the report includes.

Dutch Property Context — MCP server & API voor Nederlandse adressenStart free

What your AI can do with it

  • Pull up a property report for a Dutch address
  • Find out when a property was built
  • Check a property's energy label
  • Identify the neighbourhood an address is in
  • See whether a building is a monument
  • Look up schools for an address

Install Dutch Property Context — MCP server & API voor Nederlandse adressen

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user dutch-property-context-mcp-serve 'https://property-context.tradebrite.nl/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://property-context.tradebrite.nl/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=dutch-property-context-mcp-serve&config=eyJ1cmwiOiJodHRwczovL3Byb3BlcnR5LWNvbnRleHQudHJhZGVicml0ZS5ubC9tY3AifQ==

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://property-context.tradebrite.nl/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add dutch-property-context-mcp-serve --url 'https://property-context.tradebrite.nl/mcp'

    Run it once, then sign in with codex mcp login dutch-property-context-mcp-serve if the server asks for an account.

From the project's README

As published by rleefers/dutch-property-context in README.md.

Eén adres erin, één gekoppeld pandrapport eruit. Bouwjaar en oppervlakte uit de BAG, het geregistreerde energielabel, CBS-buurtcijfers, omgevingsgeluid en luchtkwaliteit, rijksmonumentstatus, beschermd stads- of dorpsgezicht, en scholen in de buurt.

Draait als remote MCP-server en als gewone HTTPS-API. Gratis, geen API-sleutel, geen registratie.

https://property-context.tradebrite.nl

📖 Documentatie: https://tradebrite.nl/property-context/


Aansluiten in 10 seconden

Claude (web of desktop, elk abonnement): Customize → Connectors → + → Add custom connector, plak https://property-context.tradebrite.nl/mcp.

ChatGPT: custom connectors vereisen Developer Mode (Pro/Team/Enterprise/Edu); op Plus kan het niet — gebruik daar de HTTPS-API.

Claude Code:

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

Of in je MCP-configuratie (Claude Desktop, Cursor, Windsurf, …):

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

Daarna kun je vragen: "Wat moet ik weten over Grote Markt 2 in Haarlem voor ik ga bezichtigen?"

Liever gewoon HTTP:

curl "https://property-context.tradebrite.nl/v1/property/context?address=Grote%20Markt%202,%20Haarlem"

Waarom dit bestaat

Vraag een AI-agent naar een Nederlands adres en hij gaat het web op. Dat levert een antwoord op dat er goed uitziet en soms klopt. De onderliggende gegevens zijn openbaar en betrouwbaar, maar ze staan in negen registers met elk hun eigen sleutel, formaat en eigenaardigheden.

Het lastigste is niet het ophalen maar het koppelen, en daar ging het bij ons herhaaldelijk mis voordat we het doorhadden:

  • Het monumentnummer dat we publiceerden bleek het interne objectnummer te zijn. Prinsengracht 263 kreeg een nummer mee dat in het monumentenregister naar een pand in Zierikzee wijst.
  • De monumentquery was niet plaatsgebonden, dus een adres in Asten kreeg een monument in Coevorden toegewezen.
  • Binnenrotte 101, Amsterdam gaf zonder enig voorbehoud het pand in Rotterdam terug, met match_verified: true.

Geen van de bronnen was stuk. Het koppelen was stuk. Deze laag neemt dat werk over, en zegt er expliciet bij hoe zeker het is dat we het juiste pand te pakken hebben.

Wat je terugkrijgt

Eén JSON-antwoord (~11 kB) met identity, building, energy, location, neighbourhood, environment, heritage, protected_area, schools, signals en provenance.

Let op identity.match_verified. Staat die op false, dan is het gevraagde adres niet met zekerheid teruggevonden en gaat de rest van het antwoord mogelijk over een ánder pand. Bij match_ambiguous staan alle even goede kandidaten erbij.

signals zijn observaties, nooit vastgestelde gebreken. Bouwjaar 1921 betekent niet dat er loden leidingen zijn — het betekent dat dat het nakijken waard is.

SignaalBetekenis
construction_era_checksWat bij dit bouwjaarcohort gecontroleerd hoort te worden
conflicting_construction_yearTwee registers noemen een ander bouwjaar; beide worden getoond
energy_label_expiring / no_energy_labelStatus van het geregistreerde label
protected_townscape / world_heritage_areaGevolgen voor vergunningen
address_match_unverifiedHet gevraagde adres is niet met zekerheid teruggevonden
source_unavailableEen bron antwoordde niet — onbekend, niet leeg

Wat het níét doet

Geen taxatie, geen woningwaarde, geen juridisch of bouwkundig advies. Geen vraagprijs, geen erfpachtcanon, geen VvE-informatie en geen eigendomshistorie — die zijn niet vrij beschikbaar.

Ontwerpprincipes

  1. Nooit een ontbrekende waarde invullen omdat hij waarschijnlijk lijkt.
  2. FEIT ≠ SIGNAAL ≠ ONBEKEND.
  3. Provenance per bron, ook in depth=compact — een deel van de bronnen staat onder CC BY en dan is bronvermelding een licentievoorwaarde.
  4. Eén MCP-tool, niet tientallen. Onze toollijst is 2.419 tekens. Een brede Nederlandse open-data-MCP die we ernaast legden: 55.452 tekens voor 64 tools.
  5. Een falende bron faalt zichtbaar.
  6. Een veld dat nooit gevuld wordt, hoort er niet in.

Zelf draaien

npm install
python3 scripts/build_school_index.py     # bouwt data/schools.json
python3 scripts/build_amenities_index.py  # bouwt data/amenities.json
python3 scripts/build_places_index.py     # bouwt data/places.json
npx wrangler deploy                       # vul eerst je account_id in wrangler.toml
node regression.mjs                       # dertien gevallen tegen de live dienst

De indexbestanden staan bewust niet in de repo: ze zijn afgeleid van CC BY-bronnen en in een paar minuten opnieuw te bouwen. Een EP_ONLINE_KEY (gratis aan te vragen bij RVO) is optioneel; zonder die sleutel ontbreekt alleen het energielabel, netjes als not_configured.

Let op de bundelgrens. Boven ongeveer 3,7 MB slaat de koude start van een Cloudflare Worker om van 0,2 naar 9 seconden, óók op /health. Geïsoleerd nagemeten. Er kan dus geen vierde index bij zonder R2.

Bronnen en licentie

BAG (Public Domain Mark 1.0) · EP-Online/RVO (eigen voorwaarden, geen bulk-doorlevering) · CBS Wijken & Buurten en Kerncijfers (CC BY 4.0) · RIVM geluid en luchtkwaliteit (publiek domein) · RCE rijksmonumenten en beschermde gebieden (CC BY 4.0) · DUO onderwijsadressen (CC BY).

Attributie is bij een deel hiervan verplicht. Daarom zit provenance in elk antwoord. Geef die door als je de gegevens aan een eindgebruiker toont; die verplichting gaat met de data mee.

Code: MIT, zie LICENSE.

Privacy

De gehoste dienst logt geen adressen, geen postcodes en geen IP-adressen. Wel: de gemeente (grofmazig), de afgegeven signalen en de bronstatussen.

Verwant

Dutch Vehicle Context — dezelfde aanpak voor Nederlandse voertuigen: kenteken erin, APK-historie, terugkerende afkeurpunten en de volledige terugroepketen eruit.


Gebouwd door Tradebrite BV · info@tradebrite.nl

Tools it offers (1)

What this server listed when Ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.

  • get_verified_property_context

Signals

Last commit
Aug 2026
Advanced
Delivery
dutch-property-context MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
nl-tradebrite-dutch-property-context
Source
github.com/rleefers/dutch-property-context
Hosted endpoint
https://property-context.tradebrite.nl/mcp