Luxembourg MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LUXEMBOURG_MCP_RATE_LIMIT | No | Rate limit per minute per client. Set to 0 to disable. Default is 60. | 60 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_datasetsC | Search Luxembourg's official data.public.lu catalog. |
| get_datasetA | Get metadata and current download resources for an official dataset. |
| geocode_addressC | Resolve a Luxembourg address to official Geoportail coordinates. |
| reverse_geocodeA | Find the nearest official Luxembourg address to WGS84 coordinates. |
| list_geo_collectionsC | Search official Geoportail OGC feature collections by title, description, or keyword. |
| get_geo_featuresC | Fetch GeoJSON features from an official Geoportail OGC collection. |
| get_weather_alertsA | Get current official MeteoLux weather warnings published on data.public.lu. |
| search_legislationC | Search official Luxembourg legislation and consolidated laws through Legilux. |
| search_statisticsB | Search STATEC LUSTAT statistical dataflows by topic or title. |
| get_statisticsC | Retrieve recent observations from a STATEC LUSTAT SDMX dataflow. |
| get_city_parkingC | Get current Ville de Luxembourg car-park capacity and free spaces. |
| list_cfl_parkingA | List official CFL Park and Ride facilities. |
| get_cfl_parkingC | Get live occupancy and details for a CFL Park and Ride facility. |
| get_trafficC | Get live CITA motorway speed, occupancy, and flow measurements. |
| get_water_levelsB | Get the latest official measured water level at Luxembourg stations. |
| get_air_qualityB | Get the latest national telemetric air-quality measurements by station. |
| search_chamber_bodiesC | Search official Chamber committees, delegations, bodies, memberships, and roles. |
| get_accessibility_figuresC | Get national Digital Accessibility Observatory key figures. |
| get_accessibility_auditsB | Get the latest public-sector digital accessibility audits. |
| search_transit_stopsC | Search official nationwide public-transport stops from the current ATP GTFS feed. |
| get_city_mobilityB | Get Ville de Luxembourg mobility locations as GeoJSON features. |
| get_weather_observationsA | Get live MeteoLux weather observations at Luxembourg-Airport: temperature, wind, pressure, humidity, visibility. |
| get_public_holidaysA | List Luxembourg legal public holidays in four languages, optionally for one year. |
| search_parliamentary_questionsB | Search Chamber of Deputies parliamentary questions by keyword, newest first. |
| get_housing_pricesB | Get advertised housing sale prices by commune from the official Observatoire de l'Habitat. |
| get_election_resultsA | Get machine-readable 2023 legislative election results, national and per circonscription. |
| get_ev_chargingA | Get Chargy public EV charging stations with live connector availability. |
| get_waste_collectionsB | Get upcoming municipal waste-collection dates for a Luxembourg commune. |
| get_weather_forecastB | Get the official MeteoLux forecast for a place in Luxembourg: current conditions, 24 hours, 5 days, UV index, sunrise and sunset. |
| get_fuel_pricesB | Get official monthly Luxembourg prices for petrol, diesel, hydrogen, LPG, home electricity and public EV charging. |
| get_public_alertsC | Get recent LU-Alert public warnings: floods, storms, food recalls and other national alerts. |
| get_commune_leadersB | Get the current mayor and aldermen of Luxembourg communes. |
| get_commune_populationA | Get official resident population by commune, split by adults, minors and sex. |
| get_pharmacies_on_dutyA | Get the pharmacies on duty in Luxembourg for a date, with address and phone number. |
| get_electricity_pricesA | Get Luxembourg day-ahead wholesale electricity prices per quarter hour, with the cheapest and most expensive slots. |
| get_carsharingB | Find currently available CFL FLEX carsharing vehicles by station, town or fuel type. |
| get_bike_sharingB | Get live Vel'OK bike-sharing availability at stations in southern Luxembourg. |
| search_tendersB | Search Luxembourg public procurement notices with deadlines, buyers and CPV codes. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 38 tools
Each tool targets a distinct resource or action, and the descriptions clarify the differences between similar-sounding tools like weather observations, forecasts, and alerts. A few parking and mobility tools could be momentarily confused, but their live/current versus list/static distinction is clear.
All 38 tool names follow a consistent lowercase snake_case verb_noun pattern, with get_, search_, and list_ used predictably. The naming convention is uniform and makes the tool set easy to scan despite its size.
38 tools is on the heavy side and spans many unrelated domains, from weather to legislation to carsharing. The breadth is somewhat justified for a national open-data gateway, but the surface is large enough to feel overwhelming for typical agent use.
The server covers most major Luxembourg public-data areas: transport, weather, geo, energy, government, statistics, and legislation. Minor gaps exist—such as no dedicated legal-text retrieval or train schedules—but the core workflows an agent would need are largely covered.