Planet Watch MCP

by Stefy (nextime) LanzaUpdated Aug 13, 2026

Ten environmental layers at one point on Earth in a single call: weather, air quality and pollen, sea state, aviation, space weather, hazards, earthquakes, radiation, official warnings, and whether today is unusual for the date. Fifteen sources, no API key.

mcp
weather
marine
+7
|

How to pay

Subscribe

Monthly billing

$29/month

Predictable monthly cost with included usage. Best for steady, high-volume traffic.

  • Unlimited tools within plan limits
  • One API key, billed once a month
  • Cancel any time

Every environmental layer at one point on Earth, from fifteen public sources, with no API key required.

One call, ten layers

conditions_briefing(latitude, longitude) returns land weather, air quality, sea state, the nearest reporting airfield, space weather, active natural hazards, recent earthquakes, nearby radiation readings, official warnings, and whether today is climatologically unusual — from up to eleven providers.

Each layer is fetched independently, so a dead upstream degrades one section rather than failing the call. The response lists layers_returned and layers_failed explicitly. Pass include=["land","air_quality"] to fetch only what you need.

Is this weather actually unusual?

climate_anomaly answers the question a forecast cannot. It compares today against the same calendar date in previous years, from ERA5 reanalysis:

today 35.2 C · normal 31.2 C · anomaly +4.0 C · 1.2 sigma
verdict: "warmer than usual"    baseline 2016-2025, range 26.5-36.3 C

The baseline always ends last year, because ERA5 lags real time by about five days and today must never sit inside its own baseline. The response says plainly that a ten-year window is a short baseline and that one day's anomaly is weather, not evidence of climate change.

A change feed for a place

watch_location(latitude, longitude, cursor) reports only the hazards and earthquakes that have appeared since you last looked. The first call sets a baseline; hand the cursor back later for the delta.

The server is stateless — the cursor carries the state, so nothing about you is stored server-side. A cursor issued for one location is rejected by another rather than silently reinterpreted.

Layers and sources

LayerSources
Land weatherOpen-Meteo — forecast, current conditions, geocoding
Air qualityOpen-Meteo/CAMS — PM2.5, PM10, ozone, NO2, SO2, CO, European AQI, UV, five pollen types
SeaOpen-Meteo Marine (waves, swell), WorldTides (harmonic tides, optional)
AirNOAA Aviation Weather Center — METAR, TAF, SIGMET, AIRMET
SpaceNOAA SWPC — Kp index, solar wind, flares, alerts
HazardsNASA EONET, USGS Volcano Hazards, USGS Water Services
HydrologyOpen-Meteo/GloFAS — global river discharge
SeismicUSGS Earthquake Hazards, EMSC
RadiationSafecast
ClimateOpen-Meteo Archive (ERA5) — same-date normals back to 1940
Official warningsUS National Weather Service

41 tools. Call coverage() for the breakdown and list_sources() for the source register.

Provenance and honest limits

Every response carries a provenance block naming only the sources behind that specific answer. The caveats are load-bearing:

  • Safecast radiation data is volunteer-collected. Calibration and siting vary; not a regulatory monitoring network.
  • Aviation data is advisory only — not an official preflight briefing.
  • Marine forecasts are model output. Coastal and enclosed waters are modelled poorly; not for navigation.
  • Air quality is model output, not a reference station, and pollen is modelled for Europe only.
  • Official warnings are relayed, not issued. Act on the NWS original. US only — outside coverage the layer reports in_coverage: false rather than pretending nothing is happening.
  • Earthquake magnitudes are revised after automatic detection.

Explicitly not covered: emergency alerting, official preflight briefings, navigation-grade marine forecasts, regulatory radiation monitoring, earthquake prediction, and official warnings outside the United States.