malkreide avatar

Swiss Environment Mcp

malkreide/swiss-environment-mcp

Connects Claude to Switzerland's environmental monitoring infrastructure through BAFU's public APIs. You get real-time air quality readings from all 16 NABEL stations with WHO 2021 compliance checks, hydrological data from federal gauging stations, active flood warnings by canton, natural hazard bulletins from SLF/BAFU, and wildfire danger indices. Also exposes the full BAFU dataset catalogue via CKAN search. No API keys required since everything runs on open government data endpoints. Useful when you need to analyze Swiss environmental conditions, build monitoring workflows, or pull official measurements into reports. The server implements read-only access with built-in rate limits and supports both stdio for Claude Desktop and SSE for browser deployment.

GitHub stars
1
tools
21
transport
STDIO
last updated
Sep 20, 2026

Tools

21 tools

Public tool metadata for what this MCP can expose to an agent.

env_nabel_stationsList all 16 NABEL monitoring stations with location type and canton

List all 16 NABEL monitoring stations with location type and canton

No parameter schema in public metadata yet.

env_nabel_currentCurrent air quality data for a station (NO₂, O₃, PM10, PM2.5, SO₂, CO)

Current air quality data for a station (NO₂, O₃, PM10, PM2.5, SO₂, CO)

No parameter schema in public metadata yet.

env_air_limits_checkCompare a measurement against Swiss LRV limits and WHO 2021 guidelines

Compare a measurement against Swiss LRV limits and WHO 2021 guidelines

No parameter schema in public metadata yet.

env_hydro_stationsFilter hydrological gauging stations by water body (canton filter unavailable — see notes)

Filter hydrological gauging stations by water body (canton filter unavailable — see notes)

No parameter schema in public metadata yet.

env_hydro_currentCurrent water level, flow rate and temperature at a station

Current water level, flow rate and temperature at a station

No parameter schema in public metadata yet.

env_hydro_historyLatest LINDAS value plus the access path for real time series

Latest LINDAS value plus the access path for real time series

No parameter schema in public metadata yet.

env_flood_warningsActive flood warnings filtered by danger level (nationwide — canton filter not applied)

Active flood warnings filtered by danger level (nationwide — canton filter not applied)

No parameter schema in public metadata yet.

env_bathing_waterBathing water quality (E.coli, enterococci) per bathing site — multi-year time series

Bathing water quality (E.coli, enterococci) per bathing site — multi-year time series

No parameter schema in public metadata yet.

env_hazard_overviewRouter: points to the dedicated live hazard tools + official portals (no network call — the aggregate naturgefahren.ch API was discontinued)

Router: points to the dedicated live hazard tools + official portals (no network call — the aggregate naturgefahren.ch API was discontinued)

No parameter schema in public metadata yet.

env_hazard_regionsRouter: maps a hazard type (flood/avalanche/wildfire/snow) to the right live tool + portal (no network call)

Router: maps a hazard type (flood/avalanche/wildfire/snow) to the right live tool + portal (no network call)

No parameter schema in public metadata yet.

env_wildfire_dangerWildfire danger index by canton and region

Wildfire danger index by canton and region

No parameter schema in public metadata yet.

env_snow_stationsList automatic SLF/IMIS snow measurement stations (by canton)

List automatic SLF/IMIS snow measurement stations (by canton)

No parameter schema in public metadata yet.

env_snow_currentCurrent snow depth (HS) and 24 h new snow (HN_1D) per station, in cm

Current snow depth (HS) and 24 h new snow (HN_1D) per station, in cm

No parameter schema in public metadata yet.

env_avalanche_bulletinAvalanche danger levels (EAWS 1–5) per warning region, seasonal

Avalanche danger levels (EAWS 1–5) per warning region, seasonal

No parameter schema in public metadata yet.

env_hunting_speciesList the 36 species tracked by the federal hunting statistics (with codes)

List the 36 species tracked by the federal hunting statistics (with codes)

No parameter schema in public metadata yet.

env_hunting_statsCull / game-loss / population figures per species, canton and year (2015–2024)

Cull / game-loss / population figures per species, canton and year (2015–2024)

No parameter schema in public metadata yet.

env_bafu_datasetsSearch BAFU datasets on opendata.swiss (CKAN API)

Search BAFU datasets on opendata.swiss (CKAN API)

No parameter schema in public metadata yet.

env_bafu_dataset_detailFull metadata and download URLs for a specific dataset

Full metadata and download URLs for a specific dataset

No parameter schema in public metadata yet.

env_noise_aircraft_atAircraft noise exposure at an LV95 point — resolves the overlapping noise contours and returns a dB bracket with the highest value as an upper bound

Aircraft noise exposure at an LV95 point — resolves the overlapping noise contours and returns a dB bracket with the highest value as an upper bound

No parameter schema in public metadata yet.

env_noise_aircraft_registersWhich airfields have a published cadastre, with validity dates, dB range and the official plan (PDF) — the provenance tool

Which airfields have a published cadastre, with validity dates, dB range and the official plan (PDF) — the provenance tool

No parameter schema in public metadata yet.

env_noise_limits_checkCompare a rating level against the LSV exposure limit values (planning value / immission limit / alarm value) by sensitivity level ES I–IV

Compare a rating level against the LSV exposure limit values (planning value / immission limit / alarm value) by sensitivity level ES I–IV

No parameter schema in public metadata yet.

Sponsors

Readme

🇨🇭 Part of the Swiss Public Data MCP Portfolio

🌿 swiss-environment-mcp

Version License: MIT Python 3.11+ MCP CI Data Source

MCP server connecting AI models to Swiss environmental data from BAFU – air quality, hydrology, natural hazards, wildfire danger and open environmental datasets.

🇩🇪 Deutsche Version

Demo: Claude queries NABEL air quality via a swiss-environment-mcp tool call and gets a WHO 2021 compliance check


Overview


View the full README on GitHub

Details

Repository
github.com/malkreide/swiss-environment-mcp
Website
github.com/malkreide/swiss-environment-mcp
Category
Data & Analytics
Package
swiss-environment-mcp
Transport
STDIO
Registry
MCP registry, active

More from malkreide

Related Data & Analytics MCP servers

View all
1mcp-dir avatarCNPJmcp-dir/cnpj-mcpFree Brazilian CNPJ lookup (legal name, status, partners) + lawsuit discovery. Public data, no login1stars
2nilayp-codes avatarTypecastnilayp-codes/typecastValidates job-posting JSON against a strict schema; returns one fixable error line per problem.1stars
3noblabs avatarLit Forge Mcpnoblabs/lit-forge-mcpAsset planning, market data, econ releases, central bank speakers, US macro, geopolitical. 19 tools.1stars
4oneill9 avatarMcp Server Tfloneill9/mcp-server-tflCommunity-built server providing real-time London transport data via the TfL Unified API1stars
5oneill9 avatarTfl Mcp Serveroneill9/tfl-mcp-serverCommunity-built server providing real-time London transport data via the TfL Unified API1stars
6openweb-ninja avatarOpenwebninja Mcpopenweb-ninja/openwebninja-mcpOfficial MCP server for OpenWeb Ninja APIs - 40+ real-time web data and SERP APIs as MCP tools1stars