protogrid

Search / com.meteosource/weather

Weather MCP Server by Meteosource

R1· needs a key

Forecasts, severe-weather alerts, air quality, 20-year weather history, solar and wind production.

v0.1.2 · active · repository · website · descriptor JSON · versions

An agent can connect on its own if it already holds api_key.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Quality80good
Trust100of 100
Uptime, 30 days100%
Latency p501008 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "weather": {
      "type": "http",
      "url": "https://mcp.meteosource.com/mcp",
      "headers": {
        "Authorization": "Bearer ${api_key}"
      }
    }
  }
}
claude mcp add --transport http weather https://mcp.meteosource.com/mcp --header "Authorization: Bearer ${api_key}"
[mcp_servers.weather]
url = "https://mcp.meteosource.com/mcp"
bearer_token_env_var = "api_key"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "weather": {
      "type": "remote",
      "url": "https://mcp.meteosource.com/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:api_key}"
      }
    }
  }
}
{
  "mcpServers": {
    "weather": {
      "type": "http",
      "url": "https://mcp.meteosource.com/mcp",
      "headers": {
        "Authorization": "Bearer ${api_key}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=weather&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLm1ldGVvc291cmNlLmNvbS9tY3AiLCJoZWFkZXJzIjp7IkF1dGhvcml6YXRpb24iOiJCZWFyZXIgJHthcGlfa2V5fSJ9fQ%3D%3D"
}
{
  "servers": {
    "weather": {
      "type": "http",
      "url": "https://mcp.meteosource.com/mcp",
      "headers": {
        "Authorization": "Bearer ${api_key}"
      }
    }
  }
}
{
  "mcpServers": {
    "weather": {
      "httpUrl": "https://mcp.meteosource.com/mcp",
      "headers": {
        "Authorization": "Bearer ${api_key}"
      }
    }
  }
}
extensions:
  "weather":
    enabled: true
    name: "weather"
    type: streamable_http
    uri: "https://mcp.meteosource.com/mcp"
    headers:
      "Authorization": "Bearer ${api_key}"
    timeout: 300

Placeholders to fill from your own secret store: ${api_key}. The registry never accepts secret values.

Quality 80 / 100good

protocol88 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • warn
    protocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every use
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene64 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length4 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_forecast (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_alerts (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_wind_production (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 4,606 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

7 tools, about 4,606 tokens to load them all · tool set acde57f45394 · checked 2026-11-07 17:28 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 100 / 100

provenance100
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +dns-namespace +website +reachable +uptime-100% +updated-12d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.meteosource.com/mcp streamable-httpapi_key ${api_key}yes100%1008 ms2026-07-282026-11-07

Tools (7)

get_air_qualityHourly air-quality (smog) forecast for up to 20 locations, about 4 days ahead. Columns: `air_quality` (index, 1 = good, higher = worse) and pollutant surface concentrations — default pm10, pm25, no2_surface, so2_surface, ozone_surface; also available via `variables`: co_surface, no_surface, ozone_total, aerosol_550, dust_550nm, dust_mixing_ratio_05. Output is a table per location (`columns` once, `rows` as arrays), trimmed to `hours`. Not available on the free tier.
get_alertsOfficial weather warnings (severe weather alerts) for up to 20 locations. Returns only locations that currently have an active alert, with event type, severity, validity window and headline — an empty list means all clear. Cheap to call frequently; designed for monitoring/polling. Coverage: USA, EU countries and Canada. Requires the startup tier or higher (not available on the free tier).
get_forecastWeather forecast for up to 20 locations in one call. Sections (comma-separated): 'current' (now), 'hourly' (up to 168 h ahead, trimmed to `hours`), 'daily' (up to 30 days ahead, trimmed to `days`), 'minutely' (precipitation minute-by-minute, higher tiers), 'alerts' (official weather warnings, startup tier and above), or 'all'. Use `variables` to keep only specific fields (e.g. ["temperature", "wind", "precipitation", "probability", "irradiance"]) and reduce output size — recommended when querying many locations. Timezone defaults to each location's local time; units default per-country ('metric' forces SI). Forecast horizon depends on the subscription tier (free: 7 days). Output: time series (hourly, daily, minutely) are tables — `columns` listed once and `rows` as arrays in column order; nested API groups are flattened with underscores (wind_speed, probability_storm, cloud_cover_total). `units` is given once at the top level when it is the same for every location.
get_solar_productionProduction of photovoltaic systems, past and forecast, for up to 20 sites. Each site is lat + lon plus the installation: module_kw (installed kWp; use 1 to get specific yield per kWp), inverter_kw (defaults to module_kw), tilt (degrees from horizontal, default 30) and orientation (azimuth the modules face, clockwise from north: 180 = south, the default). Dates are YYYY-MM-DD, inclusive, from up to 20 years back to 4 days ahead, so one call can cover last week's actual weather and the coming days. The renewables plan includes the last 3 years; older days need the paid historical add-on, otherwise the API refuses them ("historical data this old"), reported per site. Granularity: 'hourly' (power at each full hour, max 14 days per call), 'daily' or 'monthly' (energy, max 366 days per call — call repeatedly for multi-year yield; past days are cached so repeats are cheap). Columns: production_kw = output of the system at that hour (an instantaneous value); production_kwh = energy of the day or month, summed from those hourly values; production_max_kw = its peak. `variables` adds the weather behind the production: irradiance (ghi, dni, dhi in W/m2 hourly; ghi/dni/dhi_sum_wh_m2 daily and monthly), temperature, cloud_cover, humidity, dew_point, pressure, snowfall (flag per hour; snowfall_hours daily and monthly). Each site+day costs one API request on first fetch; a single call is capped at 400 site-days — split longer ranges into multiple calls. Needs a key on the renewables tier. Output: `columns` once at the top level; each site has `rows` as arrays in column order.
get_weather_historyHistorical weather (archive) with server-side aggregation. The archive holds 20 years, but how much of it a key may read depends on its plan: startup includes the last 7 days, standard the last year, premium and flexi all 20 years; byvalue reaches 366 days back and no further. Older days need Meteosource's paid historical add-on (billed per location and day); without it the API refuses such a day with "not allowed to access historical data this old", reported per location, so start inside the plan's range. Dates are YYYY-MM-DD, inclusive. Granularity: 'hourly' (raw hours, max 14 days per call), 'daily' (per-day min/max/avg/sum statistics, max 366 days) or 'monthly' (folded from daily, max 366 days per call — call repeatedly for multi-year analyses; results are cached so repeats are cheap). Variables (default: temperature, precipitation, wind): cape, cloud_cover, dew_point, evaporation, feels_like, humidity, irradiance, ozone, precipitation, precipitation_type, pressure, soil_temperature, surface_temperature, temperature, weather, wind, wind_distribution. Aggregations per variable: temperature min/max/avg, precipitation sum, wind speed avg + gusts max, irradiance sum in Wh/m2 (useful for PV analysis), weather = most frequent code of the day, precipitation_types = kinds seen that day (e.g. "rain,snow"; "none" when dry) — use weather and precipitation_type to document what happened (snow, fog, thunderstorm). wind_distribution (daily/monthly; for wind-turbine siting) = hours per 10 m wind-speed bin (wind_hours_0_2 … wind_hours_10_plus) and wind_power_density_w_m2 = 1/2 * 1.225 * mean(v^3) at 10 m — scale to hub height yourself (the API has no hub-height wind). `normals=true` (daily/monthly) adds long-term columns for each calendar day: temperature_normal_avg/min/max, temperature_record_min/max, wind_normal_speed, wind_record_gusts, precipitation_normal_sum and precipitation_normal_probability — compare a period with its normal in one call. Each location+day costs one API request on first fetch; a single call is capped at 400 location-days — split longer ranges into multiple calls. Not available on the free tier (startup+). Output: `columns` once at the top level; each location has `rows` as arrays in column order (a year of daily rows is ~15 kB).
get_wind_productionProduction of wind farms, past and forecast, for up to 20 sites. Each site is lat + lon plus the farm: turbine_model (catalogue below), exactly one of turbine_count or total_capacity (MW), hub_height (metres, default 100) and roughness of the surrounding terrain (water, open, farmland — the default, suburban, urban). Dates are YYYY-MM-DD, inclusive, from up to 20 years back to 4 days ahead, so one call can cover last week's actual weather and the coming days. The renewables plan includes the last 3 years; older days need the paid historical add-on, otherwise the API refuses them ("historical data this old"), reported per site. Granularity: 'hourly' (power at each full hour, max 14 days per call), 'daily' or 'monthly' (energy, max 366 days per call — call repeatedly for multi-year yield; past days are cached so repeats are cheap). Columns: production_mw = output of the whole farm at that hour (an instantaneous value); production_mwh = energy of the day or month, summed from those hourly values; production_max_mw = its peak. `variables` adds the weather behind the production: wind (10 m above ground, not hub height: wind_10m_speed, wind_10m_gusts and wind_10m_angle hourly; speed avg/max and gusts max daily and monthly), temperature, dew_point, pressure. Turbine catalogue (series + rotor diameter in m / rated power in kW): Adwen AD116/5000; Enercon E48/800, E-53/800, E-70/2000, E-70/2300, E-82/2000, E-82/2300, E-82/2350, E-82/3000, E-92/2350, E-101/3050, E-101/3500, E-115/3000, E-115/3200, E-126/4200, E-126/7500, E-126/7580, E-141/4200; Eno ENO100/2200, ENO114/3500, ENO126/3500; GE GE100/2500, GE103/2750, GE120/2500, GE120/2750, GE130/3200; Nordex N90/2500, N100/2500, N117/2400, N131/3000, N131/3300, N131/3600; Senvion MM92/2050, MM100/2000, S104/3400, S114/3200, S114/3400, S122/3000, S122/3200, S126/6150, S152/6330; aerodyn SCD168/8000; Siemens SWT113/2300, SWT113/3200, SWT120/3600 (the default), SWT130/3300, SWT130/3600, SWT142/3150; Vestas V80/2000, V90/2000, V90/2000/GS, V90/3000, V100/1800, V100/1800/GS, V112/3000, V112/3075, V112/3300, V112/3450, V117/3300, V117/3450, V117/3600, V126/3000, V126/3300, V126/3450, V164/8000, V164/9500; Vensys VS112/2500. Each site+day costs one API request on first fetch; a single call is capped at 400 site-days — split longer ranges into multiple calls. Needs a key on the renewables tier. Output: `columns` once at the top level; each site has `rows` as arrays in column order.
search_placesFind locations and their Meteosource place_id. Use this first to resolve city names, postal codes or coordinates into place_id values for the other weather tools. Provide either `query` (place name or postal code) to search, or `lat` + `lon` to find the nearest known place. Returns up to 10 matches ordered by relevance, each with place_id, administrative area, country, coordinates and timezone. Note: lat/lon are returned in degree-letter format (e.g. "50.08804N").

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "com.meteosource/weather",
  "title": "Weather MCP Server by Meteosource",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.meteosource.com/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "Authorization",
          "value": "Bearer {api_key}",
          "isSecret": true,
          "variables": {
            "api_key": {
              "isSecret": true,
              "isRequired": true,
              "description": "Your Meteosource API key (https://www.meteosource.com)."
            }
          },
          "isRequired": true,
          "description": "Bearer token carrying your Meteosource API key. The plan the key is on decides which tools are available."
        }
      ]
    }
  ],
  "version": "0.1.2",
  "repository": {
    "url": "https://github.com/Meteosource/meteosource-weather-mcp",
    "source": "github"
  },
  "websiteUrl": "https://mcp.meteosource.com",
  "description": "Forecasts, severe-weather alerts, air quality, 20-year weather history, solar and wind production."
}