{"name":"io.github.jocarrd/aemet-mcp","slug":"jocarrd-aemet-mcp","title":null,"description":"MCP server for AEMET: Spain's official forecasts, warnings, observations and climate data.","url":"https://mcp.market/server/jocarrd-aemet-mcp","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":30,"stars":1,"forks":0,"downloads_week":227,"last_push_at":"2026-09-16T09:28:23.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/jocarrd/aemet-client","website":null,"version":"0.3.0","remotes":[],"packages":[{"registryType":"npm","identifier":"aemet-mcp","version":"0.3.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"AEMET OpenData API key. Free at https://opendata.aemet.es/centrodedescargas/altaUsuario","isRequired":true,"format":"string","isSecret":true,"name":"AEMET_API_KEY"}]}],"tools":[{"name":"get_air_quality","description":"Returns the latest reading of AEMET's background pollution network (EMEP/VAG/CAMP): 13 rural reference stations that measure the regional baseline of O3, NO, NO2, SO2 and PM10, plus temperature, humidity, pressure, wind, radiation and precipitation. This is BACKGROUND pollution, measured far from towns and roads on purpose. It does NOT answer 'how is the air in Madrid/Barcelona today': urban air q","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_beach_forecast","description":"Returns the AEMET beach forecast for the next three days: sky, wind and waves for morning and afternoon, plus maximum temperature, water temperature, thermal sensation and maximum UV index. Covers the 591 beaches AEMET forecasts during the bathing season. Accepts a beach name (accents optional), optionally narrowed by municipality, or the 7-digit AEMET beach code.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_climate_history","description":"Finds the AEMET climatological station closest to the requested location and returns its measured history. mode='range' returns daily records (temperature, precipitation, wind, humidity, sunshine) between two dates; AEMET serves at most 6 months (186 days) per call, so longer histories need several calls. Ranges longer than 31 days are condensed into one line per month (mean max/min, total precipi","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_forecast","description":"Returns the AEMET forecast for any of Spain's 8000+ municipalities. Accepts a name (with or without accents) or INE code. Daily granularity returns temperature min/max, sky state, precipitation probability and wind for each day. Hourly returns the next ~40h.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_maritime_forecast","description":"Returns the AEMET maritime bulletin for a sea area: sea state, wind, visibility, warnings and the validity period. Two products are covered: coastal waters (8 bulletins, one per stretch of the Spanish coast, each split into per-province zones and carrying the marine warnings) and high seas (3 bulletins covering the Atlantic north of 30N, the Atlantic south of 35N and the Mediterranean). Areas can ","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_mountain_forecast","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_nearest_observation","description":"Finds the AEMET weather station closest to the requested location and returns its most recent reading (temperature, humidity, wind, precipitation, pressure). Useful for 'what's the weather right now' style questions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_warnings","description":"Returns the most recent CAP (Common Alerting Protocol) weather warnings issued by AEMET for the given autonomous community, or for the whole country ('esp'). Severity follows the CAP standard: Minor, Moderate, Severe, Extreme.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-09-19T20:07:55.407Z","report":{"scannerVersion":"0.1.5","scannedAt":"2026-09-19T20:07:55.355Z","components":{"code":{"score":25,"max":25,"notes":["5 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 3 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"aemet-mcp","version":"0.3.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-09-12T11:04:04.575Z","repositoryUrl":"git+https://github.com/jocarrd/aemet-client.git","weeklyDownloads":227}],"repo":{"found":true,"owner":"jocarrd","repo":"aemet-client","archived":false,"pushedAt":"2026-09-16T09:28:23Z","stars":1,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/55456507?v=4","ownerCreatedAt":"2019-09-17T17:04:25Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/55456507?v=4&s=128","source":"registry"},"presence":{"stars":1,"forks":0,"downloadsWeek":227,"license":"MIT","lastPushAt":"2026-09-16T09:28:23.000Z","score":30}}}},"grade_history":[],"reviews":[]}