aemet-mcp

AnCode666/aemet-mcp

3.5

Aemet-mcp is an MCP server that allows integration with the AEMET API for retrieving meteorological data.

Tools

Functions exposed to the LLM to take actions

search_municipality_code

Search Spanish municipalities by name or province (accent-insensitive, typo-tolerant).

Args: nombre: Partial or approximate name of a municipality or province.

Returns: A list of matching municipalities with their codes and provinces.

get_daily_forecast

Get the daily weather forecast for a Spanish municipality.

Args: municipality_code: AEMET municipality code (e.g., "28079" for Madrid)

get_station_data

Obtain specific weather data for a weather station.

Args: station_id: Station identifier (e.g., "8416Y" for Valencia))

get_station_list

Get a list of all available weather stations or filter by one or more search terms, including approximate matches.

Args: search_terms: Optional terms (space or comma separated) to filter stations by name or province.

find_nearby_stations

Find weather stations within a given radius (in km) from a given geographic coordinate.

Args: lat: Latitude in decimal degrees (e.g., 43.36) lon: Longitude in decimal degrees (e.g., -8.41) radio_km: Search radius in kilometers

get_historical_data

Obtain historical meteorological data for a specific station.

Args: station_id: Identifier of the station (e.g. "3195" for Madrid Retiro) start_date: Start date in format YYYYY-MM-DD end_date: End date in format YYYYY-MM-DD

monthly_climate_data

Retrieve monthly climatological data for a specific weather station.

Args: station_id: Weather station identifier (e.g., "3195" for Madrid Retiro). year: Year (YYYY). month: Month (1-12).

Returns: A JSON with the monthly climate summary.

solve_beach_code

Search beaches by name, province, or municipality.

Args: nombre: Search string (accent-insensitive) tipo: One of 'playa', 'provincia', or 'municipio'

get_beach_data_uv

Query information on beaches or UV index from AEMET.

Args: name_or_code: Partial or full name of the beach, or its BEACH_ID. Also accepts 'list' or 'list:'. dias_frc: Number of forecast days, starting form 0, which means 0 days from today, to 4, which means 4 days from today. query_type: 'beach' for forecast, 'UV_index' for UV index, must be in english.

Returns: Requested information or list of matches.

Prompts

Interactive templates invoked by user choice

No prompts

Resources

Contextual data attached and managed by the client

No resources