Skip to main content
Documentation for solar-mcp v0.5.1. Source at v0.5.1.

solar-mcp

PyPI MCP Registry

MCP server for space weather and HF propagation conditions — live solar flux, Kp index, DSCOVR solar wind, X-ray flux, alerts, 27-day forecast, and band-by-band outlook through any MCP-compatible AI assistant.

Part of the qso-graph project. No authentication required — all data from NOAA SWPC public endpoints.

Install​

uvx solar-mcp # run it; nothing to install

Tools​

ToolDescription
solar_conditionsCurrent SFI, Kp, and NOAA R/S/G space weather scales
solar_forecast27-day SFI and Kp forecast from NOAA
solar_alertsActive space weather alerts and warnings
solar_windReal-time DSCOVR L1 solar wind (Bz, speed, density)
solar_xrayGOES X-ray flux and solar flare classification
solar_band_outlookHF band-by-band propagation assessment (160m-6m), each band rated on the scale in BAND-OUTLOOK.md
get_version_infoService version + upstream spec version (fleet identity attestation)

Quick Start​

No credentials needed — just install and configure your MCP client.

Configure your MCP client​

Claude Desktop​

Add to claude_desktop_config.json (~/Library/Application Support/Claude/ on macOS, %APPDATA%\Claude\ on Windows):

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

Claude Code​

Add to .claude/settings.json:

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

ChatGPT Desktop​

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

Cursor​

Add to .cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):

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

VS Code / GitHub Copilot​

Add to .vscode/mcp.json in your workspace:

{
"servers": {
"solar": {
"command": "uvx",
"args": ["solar-mcp"]
}
}
}

Gemini CLI​

Add to ~/.gemini/settings.json (global) or .gemini/settings.json (project):

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

Ask questions​

"What are the current solar conditions?"

"Is the solar wind causing any geomagnetic disturbance?"

"What's the 27-day solar forecast look like?"

"Are any bands open right now on HF?"

"Are there any active space weather alerts?"

"What class solar flare is happening?"

Data Sources​

Every value comes from a public NOAA Space Weather Prediction Center endpoint at services.swpc.noaa.gov:

DataEndpointUsed by
10.7 cm solar flux (SFI)/products/summary/10cm-flux.jsonsolar_conditions, solar_band_outlook
Planetary K-index/products/noaa-planetary-k-index.jsonsolar_conditions, solar_band_outlook
NOAA R/S/G scales/products/noaa-scales.jsonsolar_conditions
Space weather alerts/products/alerts.jsonsolar_alerts
27-day outlook/text/27-day-outlook.txtsolar_forecast
Solar wind (real-time, 1 minute)/json/rtsw/rtsw_wind_1m.json, /json/rtsw/rtsw_mag_1m.jsonsolar_wind
GOES X-ray flux/json/goes/primary/xrays-6-hour.jsonsolar_xray

Testing Without Network​

SOLAR_MCP_MOCK=1 solar-mcp

MCP Inspector​

solar-mcp --transport streamable-http --port 8008

Development​

git clone https://github.com/qso-graph/solar-mcp.git
cd solar-mcp
uv sync --group dev
uv run pytest

License​

GPL-3.0-or-later


Tool Reference

Generated from the released server's own tool definitions.

get_version_info

Get solar-mcp service version and upstream spec version.

Returns the running PyPI version of solar-mcp and the NOAA SWPC endpoint set revision currently in use. Use this to confirm fleet alignment across MCP deployments — agents can compare service_version and spec_version across servers to detect drift without going outside the MCP protocol.

No parameters.

solar_alerts

Get active NOAA space weather alerts and warnings.

Shows current solar flare alerts, geomagnetic storm warnings, radiation storm alerts, and other SWPC bulletins.

No parameters.

solar_band_outlook

Get HF band-by-band propagation outlook based on current conditions.

Derives a propagation assessment for each HF band (160m through 6m) from the current SFI and Kp values. Useful for deciding which band to operate on right now.

Each band is rated "<status> — <comment>", the status one of five words defined in BAND-OUTLOOK.md: Excellent (wide open, strong long-lasting DX), Good (regular DX openings in the band's usual hours), Fair (short, patchy or weak openings; DX possible, not dependable), Poor (likely closed for DX, or degraded by absorption and noise), Sporadic (not graded from the indices: 6m opens by sporadic-E, and by F2 at high solar flux). The thresholds are rules of thumb on SFI and Kp, not a propagation model.

No parameters.

solar_conditions

Get current solar conditions — SFI, Kp, and NOAA space weather scales.

Returns the latest 10.7 cm solar flux index (SFI), planetary Kp index, and NOAA R/S/G scales (radio blackout, solar radiation, geomagnetic storm). Includes an HF band outlook derived from current indices.

No parameters.

solar_forecast

Get the NOAA 27-day solar flux and geomagnetic forecast.

Shows predicted SFI and Kp values for the next 27 days, useful for planning DX operations, contests, and POTA/SOTA activations.

No parameters.

solar_wind

Get real-time DSCOVR L1 solar wind data.

Shows interplanetary magnetic field (Bz component), solar wind speed, and proton density from the DSCOVR satellite at L1 (~1.5M km sunward). Southward Bz (negative) drives geomagnetic storms.

No parameters.

solar_xray

Get GOES X-ray flux and solar flare status.

Shows the current X-ray classification (A, B, C, M, X) from GOES satellite data. M and X class flares can cause HF radio blackouts.

No parameters.