solarstorm.today MCP server
solarstorm.today MCP server
Clima espacial en vivo para asistentes de IA. Este servidor MCP expone datos de NOAA SWPC — el índice planetario Kp, el pronóstico geomagnético oficial de 3 días, la actividad de llamaradas solares GOES y la visibilidad de la aurora para cualquier latitud — como cuatro herramientas que tu agente puede llamar directamente.
Ejecuta la misma lógica que solarstorm.today, por lo que las respuestas coinciden con lo que muestra el sitio. Sin claves de API, sin cuentas, sin estado.
Pregunta a tu asistente: "¿Veré la aurora en Viena esta noche?" → llama a
get_aurora_visibility(48.2)y responde con datos en vivo de NOAA.
Tools
Herramienta | Devuelve |
| Último Kp planetario, nivel ( |
| Kp máximo pronosticado por día calendario para los próximos 3 días (días de Europa/Berlín) |
| Clase actual de llamarada de rayos X GOES y el pico de 24 horas, con la hora del pico |
| Kp necesario en esa latitud, Kp máximo pronosticado para las próximas 24 h y un veredicto en lenguaje sencillo |
// get_current_kp()
{
"kp": 4.33,
"level": "moderate",
"time_utc": "2026-08-27T18:00:00+00:00",
"max_24h": 5.67,
"source": "NOAA SWPC"
}
// get_kp_forecast_3day()
{
"days": [
{ "date": "2026-08-27", "max_kp": 5.67, "level": "high" },
{ "date": "2026-08-28", "max_kp": 4.0, "level": "moderate" },
{ "date": "2026-08-29", "max_kp": 2.33, "level": "low" }
],
"timezone": "Europe/Berlin",
"source": "NOAA SWPC",
"note": "Kp>=5 is a G1 geomagnetic storm on the NOAA scale."
}
// get_solar_flares_24h()
{
"current_class": "C2.1",
"peak_24h_class": "M6.9",
"peak_time_utc": "2026-08-27T04:12:00Z",
"source": "NOAA GOES (0.1-0.8 nm)"
}
// get_aurora_visibility(48.2)
{
"latitude": 48.2,
"kp_needed_naked_eye": 8,
"forecast_max_kp_24h": 5.67,
"visible_tonight": false,
"verdict": "Unlikely: forecast max Kp 5.7 is 2.3 below the ~Kp 8 needed at 48.2°. A camera picks aurora up roughly one Kp level earlier.",
"details": "https://solarstorm.today/aurora-tonight/"
}Los errores de red o de formato de NOAA se devuelven como un campo error. El servidor nunca se bloquea ante una respuesta defectuosa del upstream.
Related MCP server: spaceweather-mcp
Usa el servidor alojado (sin instalación)
Una instancia pública se está ejecutando en https://mcp.solarstorm.today/mcp.
Claude Code
claude mcp add --transport http solarstorm https://mcp.solarstorm.today/mcpClaude Desktop / claude.ai — añade un conector personalizado que apunte a
https://mcp.solarstorm.today/mcp.
Cualquier otro cliente MCP — transporte HTTP streamable, misma URL, sin autenticación.
Ejecútalo localmente (stdio)
Requiere Python 3.10+ — el mínimo establecido por el SDK mcp.
git clone https://github.com/newminya/solarstorm-mcp.git
cd solarstorm-mcp
pip install -r requirements.txt
python server.py # waits for a stdio client; Ctrl+C to quitclaude_desktop_config.json:
{
"mcpServers": {
"solarstorm": {
"command": "python",
"args": ["/absolute/path/to/solarstorm-mcp/server.py"]
}
}
}Claude Code:
claude mcp add solarstorm -- python /absolute/path/to/solarstorm-mcp/server.pyAutohospedaje (HTTP streamable)
Tres variables de entorno controlan el transporte:
Variable | Por defecto | Propósito |
|
| Configúralo en |
|
| Dirección de enlace — usa |
|
| Puerto de escucha |
mkdir -p /opt/solarstorm-mcp && cd /opt/solarstorm-mcp
# copy server.py and requirements.txt here
python3 -m venv venv && venv/bin/pip install -r requirements.txt/etc/systemd/system/solarstorm-mcp.service:
[Unit]
Description=solarstorm.today MCP server
After=network.target
[Service]
WorkingDirectory=/opt/solarstorm-mcp
Environment=MCP_TRANSPORT=streamable-http
Environment=MCP_HOST=127.0.0.1
Environment=MCP_PORT=8765
ExecStart=/opt/solarstorm-mcp/venv/bin/python server.py
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.targetsystemctl daemon-reload && systemctl enable --now solarstorm-mcp
systemctl status solarstorm-mcpnginx al frente, en un subdominio con un certificado TLS:
server {
server_name mcp.example.com;
location /mcp {
proxy_pass http://127.0.0.1:8765/mcp;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_buffering off;
proxy_read_timeout 3600s;
}
# + certbot TLS lines
}Un detalle que suele dar problemas: el SDK de MCP rechaza las solicitudes cuyo encabezado Host
no coincide con lo que espera (protección contra el rebinding de DNS). Si los handshakes fallan
con un 4xx mientras el servicio en sí está sano, comprueba qué Host reenvía tu proxy.
Cómo se derivan los números
Fuentes de datos.
services.swpc.noaa.gov— el índice K planetario y su producto de pronóstico, además del flujo de rayos X primario de GOES de 0.1–0.8 nm. Tiempo de espera de 10 segundos, sin caché, sin claves.Máximos diarios se agrupan por días calendario de Europa/Berlín, en consonancia con la audiencia germanófona del sitio. Solo los puntos observados en blanco,
estimatedypredictedcuentan para los pronósticos.Clases de llamaradas convierten el flujo de rayos X a la escala estándar A/B/C/M/X (X ≥ 1e-4 W/m², M ≥ 1e-5, y así sucesivamente).
Umbrales de aurora son valores de referencia del sector europeo para la visibilidad a simple vista: Kp 1 por encima de 66°, 3 por encima de 62°, 4.5 por encima de 58°, 6 por encima de 55°, 7 por encima de 52°, 8 por encima de 48°, 9 por encima de 44.5°. Por debajo de ~44.5° solo las tormentas históricas extremas son válidas. Una cámara normalmente capta la aurora aproximadamente un nivel de Kp antes que el ojo humano.
No modelado: el componente Bz del campo magnético interplanetario. Un Bz hacia el sur hace que un Kp dado sea mucho más productivo, y no se puede pronosticar con días de antelación — trata los veredictos como probabilidades, no como promesas.
Relacionados
solarstorm.today — el sitio del que este es un espejo (EN/DE)
Aurora esta noche — mapa en vivo con el óvalo OVATION de NOAA
Pruebas
pip install -r requirements-dev.txt
pytest -m "not live" # offline: parsing, thresholds, formatting
pytest -m live # hits NOAA, asserts the live response contractLa suite sin conexión se ejecuta en cada push contra Python 3.10–3.13. La suite en vivo
también se ejecuta a diario según un horario, porque el único error que llegó a producción
no era un error de lógica: el feed de datos observados de NOAA escribe su clave Kp mientras que el
feed de pronóstico dice kp, por lo que respuestas 200 válidas se parseaban a cero filas. Solo una
llamada real detecta ese tipo de desviación.
Licencia
MIT — consulta LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Space weather: Kp index, solar flare flux, alerts. $0.01/query, free testnet funds.
Flight and sky conditions for agents, from METAR/TAF and airports to aurora and satellite passes.
Read-only airport delay, weather, and 24h forecast tools for AI assistants. Airport-level only.
NOAA SWPC space weather: storm scales, Kp index, aurora forecasts, solar wind, activity, alerts.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides AI assistants with access to real-time space weather data and forecasts from NOAA's Space Weather Prediction Center, enabling queries and interpretations of geomagnetic storms, solar flares, and related indices.71MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol server for space weather and geomagnetic conditions, enabling AI agents to answer queries about solar flares, solar wind, geomagnetic storms, aurora forecasts, and more from authoritative data.1526 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to access real-time NOAA space weather data, including alerts, solar wind, K-index, aurora forecast, and GOES X-ray flux, through natural language queries.448 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to query live space weather, aurora forecasts, earthquake feeds, and the Helios Oracle over HTTPS with no API keys.MIT