Find boreholes, wells, CPTs, soil profiles or groundwater permits in Flanders
search_subsurfaceFind DOV records by area and attributes, e.g. the deepest boreholes in a municipality, geothermal boreholes since 2020, groundwater wells in the Brussel sand with quality data, electric CPTs near an address, soil profiles with lab data, or the largest groundwater abstraction permits in a municipality (with the licensed total per aquifer). Area: a municipality (official 2025 boundary; old pre-merger names work), or an address/coordinates with radius_m, or nothing for all of Flanders. Filtering and sorting run on DOV's server, so counts cover every matching record. Use get_subsurface_record with a result id for details. Examples: The deepest boreholes in Leuven → {"record_type":"boreholes","municipality":"Leuven","limit":3}; Geothermal boreholes drilled in Flanders since 2020 → {"record_type":"boreholes","purpose":"geothermal","date_from":"2020","limit":5}; The largest groundwater abstraction permits in Ghent → {"record_type":"groundwater_permits","municipality":"Gent","sort":"largest","limit":5}.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"record_type": "<record_type>"
},
"name": "search_subsurface"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Default: nearest with a location; otherwise deepest (boreholes, CPTs), newest (wells), largest (permits), most_described (soil profiles). | |
| limit | No | Results to list, default 10. | |
| address | No | Address in Flanders, as an alternative to municipality (then radius_m applies). | |
| aquifer | No | Wells and permits: HCOV code (A0620, or A06 for the whole system) or words from the unit name ('Brussel', 'Krijt'). | |
| date_to | No | Same formats as date_from. | |
| purpose | No | Boreholes: why it was drilled. | |
| latitude | No | WGS84 latitude, e.g. 51.0453 (use with longitude instead of address). | |
| radius_m | No | Radius around the address or coordinates, default 1000 m. | |
| date_from | No | YYYY, YYYY-MM or YYYY-MM-DD: drilling/test date, last water-level date for wells, permit start, survey date. | |
| longitude | No | WGS84 longitude, e.g. 3.7275. | |
| cpt_method | No | CPTs: electric CPTs also measure sleeve friction. | |
| max_depth_m | No | Maximum depth, same fields. | |
| min_depth_m | No | Minimum depth (borehole or CPT depth, well screen bottom, permitted well depth). | |
| record_type | Yes | What to find. | |
| x_lambert72 | No | Belgian Lambert 72 (EPSG:31370) x in metres, as an alternative to latitude/longitude. | |
| y_lambert72 | No | Belgian Lambert 72 (EPSG:31370) y in metres. | |
| municipality | No | Municipality in Flanders, e.g. 'Leuven' or 'Merelbeke-Melle'. | |
| min_annual_m3 | No | Permits: minimum licensed annual volume in m³. | |
| with_lab_data | No | Soil profiles: only those with lab samples. | |
| with_quality_data | No | Wells: only screens with groundwater quality samples. | |
| with_stratigraphy | No | Boreholes: only those with a formal, hydrogeological or Quaternary stratigraphy. |