Luxembourg MCP

Keyless MCP access to official Luxembourg public data: laws, statistics, mobility, and more.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
91%
Integridad del esquema
73%
Calidad de los nombres
99%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,712Tokens (definiciones de herramientas)
~523 BTamaño de respuesta típico
Impacto significativo en la atención (2.12% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "luxembourg-mcp": {
      "command": "uvx",
      "args": [
        "luxembourg-mcp"
      ]
    }
  }
}

Paquetes ejecutables

pypiluxembourg-mcp0.7.0stdio

Puntos de conexión remotos

https://mcp.luxembourg-mcp.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (38)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_datasets(query, page, page_size)

Search Luxembourg's official data.public.lu catalog.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1
    },
    "page_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢get_dataset(dataset_id_or_slug)

Get metadata and current download resources for an official dataset.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "dataset_id_or_slug": {
      "type": "string"
    }
  },
  "required": [
    "dataset_id_or_slug"
  ],
  "additionalProperties": false
}
⚪geocode_address(query)

Resolve a Luxembourg address to official Geoportail coordinates.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢reverse_geocode(latitude, longitude)

Find the nearest official Luxembourg address to WGS84 coordinates.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "latitude": {
      "type": "number"
    },
    "longitude": {
      "type": "number"
    }
  },
  "required": [
    "latitude",
    "longitude"
  ],
  "additionalProperties": false
}
🟢list_geo_collections(query, limit)

Search official Geoportail OGC feature collections by title, description, or keyword.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 20
    }
  },
  "additionalProperties": false
}
🟢get_geo_features(collection_id, limit, bbox)

Fetch GeoJSON features from an official Geoportail OGC collection.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "collection_id": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 10
    },
    "bbox": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "minItems": 4,
      "maxItems": 4,
      "description": "WGS84 [west, south, east, north]"
    }
  },
  "required": [
    "collection_id"
  ],
  "additionalProperties": false
}
🟢get_weather_alerts(language)

Get current official MeteoLux weather warnings published on data.public.lu.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "language": {
      "type": "string",
      "enum": [
        "en",
        "fr",
        "de",
        "lu"
      ],
      "default": "en"
    }
  },
  "additionalProperties": false
}
🟢search_legislation(query, limit)

Search official Luxembourg legislation and consolidated laws through Legilux.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢search_statistics(query, limit)

Search STATEC LUSTAT statistical dataflows by topic or title.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢get_statistics(dataflow_id, key, last_n_observations, max_rows)

Retrieve recent observations from a STATEC LUSTAT SDMX dataflow.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "dataflow_id": {
      "type": "string",
      "description": "STATEC identifier such as DF_D7100"
    },
    "key": {
      "type": "string",
      "default": "all",
      "description": "SDMX dimension key or all"
    },
    "last_n_observations": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 5
    },
    "max_rows": {
      "type": "integer",
      "minimum": 1,
      "maximum": 2000,
      "default": 500
    }
  },
  "required": [
    "dataflow_id"
  ],
  "additionalProperties": false
}
🟢get_city_parking(query, available_only)

Get current Ville de Luxembourg car-park capacity and free spaces.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "available_only": {
      "type": "boolean",
      "default": false
    }
  },
  "additionalProperties": false
}
🟢list_cfl_parking

List official CFL Park and Ride facilities.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_cfl_parking(parking_id)

Get live occupancy and details for a CFL Park and Ride facility.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "parking_id": {
      "type": "string"
    }
  },
  "required": [
    "parking_id"
  ],
  "additionalProperties": false
}
🟢get_traffic(road)

Get live CITA motorway speed, occupancy, and flow measurements.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "road": {
      "type": "string",
      "enum": [
        "a3",
        "a4",
        "a6",
        "a7",
        "a13",
        "b40"
      ],
      "default": "a6"
    }
  },
  "additionalProperties": false
}
🟢get_water_levels(station)

Get the latest official measured water level at Luxembourg stations.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "station": {
      "type": "string",
      "description": "Optional station-name filter"
    }
  },
  "additionalProperties": false
}
🟢get_air_quality(city)

Get the latest national telemetric air-quality measurements by station.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "city": {
      "type": "string",
      "description": "Optional city-name filter"
    }
  },
  "additionalProperties": false
}
🟢search_chamber_bodies(query, limit)

Search official Chamber committees, delegations, bodies, memberships, and roles.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 20
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢get_accessibility_figures

Get national Digital Accessibility Observatory key figures.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_accessibility_audits(limit)

Get the latest public-sector digital accessibility audits.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 10
    }
  },
  "additionalProperties": false
}
🟢search_transit_stops(query, limit)

Search official nationwide public-transport stops from the current ATP GTFS feed.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 20
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢get_city_mobility(category)

Get Ville de Luxembourg mobility locations as GeoJSON features.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "park_and_bike",
        "park_and_ride",
        "covered_parking",
        "surface_parking",
        "accessible_parking",
        "bike_rentals"
      ]
    }
  },
  "required": [
    "category"
  ],
  "additionalProperties": false
}
🟢get_weather_observations

Get live MeteoLux weather observations at Luxembourg-Airport: temperature, wind, pressure, humidity, visibility.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_public_holidays(year)

List Luxembourg legal public holidays in four languages, optionally for one year.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "year": {
      "type": "integer",
      "minimum": 2020,
      "maximum": 2100
    }
  },
  "additionalProperties": false
}
🟢search_parliamentary_questions(query, limit)

Search Chamber of Deputies parliamentary questions by keyword, newest first.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢get_housing_prices(property_type, commune, year)

Get advertised housing sale prices by commune from the official Observatoire de l'Habitat.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "property_type": {
      "type": "string",
      "enum": [
        "apartment",
        "house"
      ],
      "default": "apartment"
    },
    "commune": {
      "type": "string",
      "description": "Optional commune-name filter"
    },
    "year": {
      "type": "string",
      "description": "Four-digit year such as 2025; defaults to the latest"
    }
  },
  "additionalProperties": false
}
🟢get_election_results

Get machine-readable 2023 legislative election results, national and per circonscription.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_ev_charging(query, available_only)

Get Chargy public EV charging stations with live connector availability.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional name or address filter"
    },
    "available_only": {
      "type": "boolean",
      "default": false
    }
  },
  "additionalProperties": false
}
🟢get_waste_collections(commune, street, waste_type, limit)

Get upcoming municipal waste-collection dates for a Luxembourg commune.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "commune": {
      "type": "string"
    },
    "street": {
      "type": "string",
      "description": "Optional street-name filter; commune-wide rows always match"
    },
    "waste_type": {
      "type": "string",
      "description": "Optional collection-type filter such as verre, papier, biodechets"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 20
    }
  },
  "required": [
    "commune"
  ],
  "additionalProperties": false
}
🟢get_weather_forecast(latitude, longitude, language)

Get the official MeteoLux forecast for a place in Luxembourg: current conditions, 24 hours, 5 days, UV index, sunrise and sunset.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "latitude": {
      "type": "number",
      "default": 49.6116
    },
    "longitude": {
      "type": "number",
      "default": 6.1319
    },
    "language": {
      "type": "string",
      "enum": [
        "en",
        "fr",
        "de",
        "lb"
      ],
      "default": "en"
    }
  },
  "additionalProperties": false
}
🟢get_fuel_prices(months)

Get official monthly Luxembourg prices for petrol, diesel, hydrogen, LPG, home electricity and public EV charging.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "months": {
      "type": "integer",
      "minimum": 1,
      "maximum": 24,
      "default": 6
    }
  },
  "additionalProperties": false
}
🟢get_public_alerts(limit, active_only, language)

Get recent LU-Alert public warnings: floods, storms, food recalls and other national alerts.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 3
    },
    "active_only": {
      "type": "boolean",
      "default": true
    },
    "language": {
      "type": "string",
      "enum": [
        "en",
        "fr",
        "de",
        "lb"
      ],
      "default": "en"
    }
  },
  "additionalProperties": false
}
🟢get_commune_leaders(commune)

Get the current mayor and aldermen of Luxembourg communes.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "commune": {
      "type": "string",
      "description": "Optional commune-name filter"
    }
  },
  "additionalProperties": false
}
🟢get_commune_population(commune)

Get official resident population by commune, split by adults, minors and sex.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "commune": {
      "type": "string",
      "description": "Optional commune-name filter"
    }
  },
  "additionalProperties": false
}
🟢get_pharmacies_on_duty(date, locality)

Get the pharmacies on duty in Luxembourg for a date, with address and phone number.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "description": "YYYY-MM-DD within the published window; defaults to today"
    },
    "locality": {
      "type": "string",
      "description": "Optional locality or address filter"
    }
  },
  "additionalProperties": false
}
🟢get_electricity_prices

Get Luxembourg day-ahead wholesale electricity prices per quarter hour, with the cheapest and most expensive slots.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_carsharing(query, fuel_type)

Find currently available CFL FLEX carsharing vehicles by station, town or fuel type.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional station, town, address or model filter"
    },
    "fuel_type": {
      "type": "string",
      "description": "Optional fuel filter such as electric or diesel"
    }
  },
  "additionalProperties": false
}
🟢get_bike_sharing(query, available_only)

Get live Vel'OK bike-sharing availability at stations in southern Luxembourg.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional station, locality or commune filter"
    },
    "available_only": {
      "type": "boolean",
      "default": false
    }
  },
  "additionalProperties": false
}
🟢search_tenders(query, limit, open_only)

Search Luxembourg public procurement notices with deadlines, buyers and CPV codes.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional full-text filter"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    },
    "open_only": {
      "type": "boolean",
      "default": true
    }
  },
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada38 herramientas
verificadoversión no registrada38 herramientas
verificadoversión no registrada38 herramientas