Back to Directory/Developer Tools

io.github.hoon1983/spaceweather-mcp

Space weather & geomagnetic conditions (NOAA SWPC, NASA DONKI, USGS, Kyoto) via MCP.

Developer ToolsPythonv0.1.0

spaceweather-mcp

A Model Context Protocol server for space weather and geomagnetic conditions — solar flares, the solar wind, geomagnetic storms (Kp/Dst), radiation storms, sunspot regions, aurora forecasts, and a catalogued event history — so an AI agent can answer "what's the sun/space weather doing right now, and will I see aurora?" from authoritative data.

Sibling to seismic-mcp: that one reconciles earthquakes across agencies; this one reports solar/geomagnetic conditions. They install side by side.

Status

15 tools across 4 data sources — all live and verified. Everything is U.S./NASA public domain except the Kyoto Dst index, which is non-commercial and clearly labeled (and kept segregated from the public-domain feeds).

Tools

NOAA SWPC (public domain)

ToolReturns
get_conditions_nowOne-call snapshot: Kp, Bz/Bt, wind speed/density, G/S/R, storm flag, summary
get_kp_indexObserved planetary Kp series (~1 week)
get_kp_forecastNOAA 3-day Kp forecast
get_solar_windL1 magnetic field + plasma (window: 1-day/7-day)
get_alertsRecent SWPC alerts/watches/warnings
get_noaa_scalesG/S/R scales for today + 3 days
get_27day_outlookDaily F10.7 flux, Ap, largest Kp for 27 days
get_solar_flaresRecent GOES X-ray flares (C/M/X class events)
get_radiation_stormCurrent proton flux + NOAA S-scale (radiation storm)
get_solar_regionsToday's sunspot regions + C/M/X flare probabilities
get_aurora_forecastOVATION aurora probability (pass lat/lon for a local %)

NASA DONKI (public domain) — get_space_weather_events (CME / GST / FLR / SEP / IPS / HSS event catalog)

USGS Geomagnetism (public domain) — list_observatories, get_observatory (magnetometer X/Y/Z/F)

Kyoto WDC (non-commercial) — get_dst (hourly disturbance storm-time index)

Run

uv run spaceweather-mcp        # stdio MCP server
uv run pytest                  # tests

Add to claude_desktop_config.json (after publishing to PyPI):

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

Data sources, attribution & licensing

  • NOAA SWPC (services.swpc.noaa.gov) — U.S. public domain. Credit NOAA SWPC.
  • NASA DONKI via CCMC (kauai.ccmc.gsfc.nasa.gov/DONKI) — U.S. public domain (no API key needed). Credit NASA/CCMC DONKI.
  • USGS Geomagnetism (geomag.usgs.gov) — U.S. public domain. Credit the U.S. Geological Survey. (Sourced directly from USGS, not via INTERMAGNET, to keep public-domain status.)
  • Kyoto WDC for Geomagnetism — Dst index, non-commercial use only: acknowledge "WDC for Geomagnetism, Kyoto", cite the Dst DOI; real-time values are provisional. The non-commercial restriction is documented in the get_dst tool description and the DstReading schema (both surfaced to MCP clients), and this feed is kept separate from the public-domain ones.

⚠️ Only the Kyoto Dst feed is non-commercial. It is segregated, and its non-commercial terms are stated in the tool/schema docs the client sees, so a downstream commercial user is not silently bound by those terms.

Deliberately not included: INTERMAGNET and SILSO sunspot number (both CC BY-NC — would taint the otherwise commercially-usable server); JPL Horizons ephemeris (different domain). F10.7 is available via get_27day_outlook; GFZ Hp30/Hp60 high-cadence indices (CC BY 4.0) are a possible future add.

Safety

Informational only. Not for operational decisions affecting power grids, aviation, satellites, or human safety — consult official NOAA SWPC products for those. Real-time values are preliminary and routinely revised.

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx spaceweather-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-hoon1983-spaceweather-mcp": {
      "command": "uvx",
      "args": [
        "spaceweather-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

spaceweather-mcppypi

Compatible MCP Clients

io.github.hoon1983/spaceweather-mcp works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More