{"id":"ee864ef2-20c6-4aa1-a781-aef2f947e7ae","slug":"solar-mcp","kind":"mcp","name":"solar-mcp","summary":"MCP server for solar indices and space weather — SFI, SSN, Kp, DSCOVR, alerts","owner":"qso-graph","repoUrl":"https://github.com/qso-graph/solar-mcp","license":"GPL-3.0","licenseTier":"strong-copyleft","trust":"community","stars":3,"match":null,"fewStars":true,"format":"mcp","createdAt":"2026-03-04T23:00:13.000Z","addedAt":"2026-10-14T05:57:02.550Z","logoUrl":"https://avatars.githubusercontent.com/u/265651030?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["utilities","cloud-infra","memory-knowledge"],"tags":["amateur-radio","fastmcp","ham-radio","propagation","python","qso-graph","solar","space-weather"],"runtime":"python","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-17T18:34:49.799Z","sample":false,"url":"https://conduits.dev/tools/solar-mcp","language":"Python","transports":["stdio"],"install":{"pypi":"solar-mcp"},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"<!-- mcp-name: io.github.qso-graph/solar-mcp -->\n# solar-mcp\n\n[![PyPI](https://img.shields.io/pypi/v/solar-mcp?label=PyPI&color=blue)](https://pypi.org/project/solar-mcp/)\n[![MCP Registry](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fregistry.modelcontextprotocol.io%2Fv0%2Fservers%3Fsearch%3Dio.github.qso-graph%2Fsolar-mcp%26version%3Dlatest&query=%24.servers%5B0%5D.server.version&label=MCP%20Registry&color=blue)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.qso-graph/solar-mcp&version=latest)\n\nMCP 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.\n\nPart of the [qso-graph](https://qso-graph.io/) project. **No authentication required** — all data from [NOAA SWPC](https://www.swpc.noaa.gov/) public endpoints.\n\n## Install\n\n```bash\nuvx solar-mcp            # run it; nothing to install\n```\n\n## Tools\n\n| Tool | Description |\n|------|-------------|\n| `solar_conditions` | Current SFI, Kp, and NOAA R/S/G space weather scales |\n| `solar_forecast` | 27-day SFI and Kp forecast from NOAA |\n| `solar_alerts` | Active space weather alerts and warnings |\n| `solar_wind` | Real-time DSCOVR L1 solar wind (Bz, speed, density) |\n| `solar_xray` | GOES X-ray flux and solar flare classification |\n| `solar_band_outlook` | HF band-by-band propagation assessment (160m-6m) |\n| `get_version_info` | Service version + upstream spec version (fleet identity attestation) |\n\n## Quick Start\n\nNo credentials needed — just install and configure your MCP client.\n\n### Configure your MCP client\n\n#### Claude Desktop\n\nAdd to `claude_desktop_config.json` (`~/Library/Application Support/Claude/` on macOS, `%APPDATA%\\Claude\\` on Windows):\n\n```json\n{\n  \"mcpServers\": {\n    \"solar\": {\n      \"command\": \"uvx\",\n      \"args\": [\"solar-mcp\"]\n    }\n  }\n}\n```\n\n#### Claude Code\n\nAdd to `.claude/settings.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"solar\": {\n      \"command\": \"uvx\",\n      \"args\": [\"solar-mcp\"]\n    }\n  }\n}\n```\n\n#### ChatGPT Desktop\n\n```json\n{\n  \"mcpServers\": {\n    \"solar\": {\n      \"command\": \"uvx\",\n      \"args\": [\"solar-mcp\"]\n    }\n  }\n}\n```\n\n#### Cursor\n\nAdd to `.cursor/mcp.json` (project-level) or `~/.cursor/mcp.json` (global):\n\n```json\n{\n  \"mcpServers\": {\n    \"solar\": {\n      \"command\": \"uvx\",\n      \"args\": [\"solar-mcp\"]\n    }\n  }\n}\n```\n\n#### VS Code / GitHub Copilot\n\nAdd to `.vscode/mcp.json` in your workspace:\n\n```json\n{\n  \"servers\": {\n    \"solar\": {\n      \"command\": \"uvx\",\n      \"args\": [\"solar-mcp\"]\n    }\n  }\n}\n```\n\n#### Gemini CLI\n\nAdd to `~/.gemini/settings.json` (global) or `.gemini/settings.json` (project):\n\n```json\n{\n  \"mcpServers\": {\n    \"solar\": {\n      \"command\": \"uvx\",\n      \"args\": [\"solar-mcp\"]\n    }\n  }\n}\n```\n\n### Ask questions\n\n> \"What are the current solar conditions?\"\n\n> \"Is the solar wind causing any geomagnetic disturbance?\"\n\n> \"What's the 27-day solar forecast look like?\"\n\n> \"Are any bands open right now on HF?\"\n\n> \"Are there any active space weather alerts?\"\n\n> \"What class solar flare is happening?\"\n\n## Data Sources\n\nEvery value comes from a public [NOAA Space Weather Prediction Center](https://www.swpc.noaa.gov/) endpoint at `services.swpc.noaa.gov`:\n\n| Data | Endpoint | Used by |\n|------|----------|---------|\n| 10.7 cm solar flux (SFI) | `/products/summary/10cm-flux.json` | `solar_conditions`, `solar_band_outlook` |\n| Planetary K-index | `/products/noaa-planetary-k-index.json` | `solar_conditions`, `solar_band_outlook` |\n| NOAA R/S/G scales | `/products/noaa-scales.json` | `solar_conditions` |\n| Space weather alerts | `/products/alerts.json` | `solar_alerts` |\n| 27-day outlook | `/text/27-day-outlook.txt` | `solar_forecast` |\n| Solar wind (real-time, 1 minute) | `/json/rtsw/rtsw_wind_1m.json`, `/json/rtsw/rtsw_mag_1m.json` | `solar_wind` |\n| GOES X-ray flux | `/json/goes/primary/xrays-6-hour.json` | `solar_xray` |\n\n## Testing Without Network\n\n```bash\nSOLAR_MCP_MOCK=1 solar-mcp\n```\n\n## MCP Inspector\n\n```bash\nsolar-mcp --transport streamable-http --port 8008\n```\n\n## Development\n\n```bash\ngit clone https://github.com/qso-graph/solar-mcp.git\ncd solar-mcp\nuv sync --group dev\nuv run pytest\n```\n\n## License\n\nGPL-3.0-or-later\n"}