MCP-Server

noaa-spaceweather-mcp-server

io.github.cyanheads/noaa-spaceweather-mcp-server
Wissenschaft & Engineering Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Provides NOAA space-weather conditions, alerts, geomagnetic indices, aurora forecasts, solar activity, and solar-wind measurements.

noaa_spaceweather_get_alerts
Get Space Weather Alerts
Active SWPC alerts, watches, and warnings — parsed into structured records with product type, NOAA scale and level, issue time, serial number, validity window, and plain text. Covers geomagnetic storms, radio blackouts, and radiation storms. With active_only=false, also returns informational summaries, expired notices, and cancellations. max_age_hours controls how far back to look for candidates (default 48 h) — under active_only=true it does not cut off a product whose validity end is still in the future, and under active_only=false it is a literal age cutoff. The SWPC feed keeps all historical records and has no built-in expiry.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'active_only': {'type': 'boolean', 'default': True, 'description': 'When true (default), return only in-force Warnings, Watches, and Alerts. Excluded: Summaries and unrecognized products; products whose validity end has passed; cancellation notices; any product a later cancellation names by serial; and all but the newest record carrying the "THIS SUPERSEDES ANY/ALL PRIOR WATCHES IN EFFECT" line. Counts per reason ride in the exclusions enrichment field. Set false to return every product in the window, cancellations included (flagged by the cancelled field).'}, 'max_age_hours': {'type': 'number', 'default': 48, 'maximum': 720, 'minimum': 1, 'description': 'How far back to look for products, in hours (default 48). The SWPC feed retains all historical records, so this bounds the candidate set rather than declaring what is current. Under active_only=true a product whose validity end is still in the future is returned even when its issue time falls outside this window â\x80\x94 a multi-day Watch would otherwise disappear while a day it forecasts a storm for is still running. Under active_only=false it is literal and cuts at exactly the requested age.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['alerts', 'totalCount', 'activeOnly', 'fetchedAt']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['feed_unavailable', 'feed_moved'], 'description': 'Machine-readable failure mode. Declared by this tool: `feed_unavailable`: SWPC feed returns 5xx or 429, times out, or answers with a body that is not parseable JSON. Retried for up to 45 seconds in total before failing. `feed_moved`: SWPC feed path returns a permanent 4xx (404, 410, 401, 403). Fails in one attempt. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'alerts': {'type': 'array', 'items': {'type': 'object', 'required': ['productId', 'messageCode', 'productType', 'level', 'noaaScale', 'cancelled', 'serialNumber', 'phenomenon', 'issueDatetime', 'validFrom', 'validTo', 'message'], 'properties': {'level': {'type': 'number', 'description': 'NOAA scale level 0â\x80\x935 stated in the body; 0 means no scale is stated, not zero severity.'}, 'message': {'type': 'string', 'description': 'Full plain-text message.'}, 'validTo': {'type': ['string', 'null'], 'description': 'ISO 8601 UTC validity end; for a Watch, the end of its last listed storm day. Null when nothing states or implies an end.'}, 'cancelled': {'type': 'boolean', 'description': 'True when this record cancels an earlier product; the cancelled product itself stays false. Always false under active_only=true, which drops both.'}, 'noaaScale': {'type': ['string', 'null'], 'description': 'NOAA scale stated in the body, e.g. "G1"; null when none.'}, 'productId': {'type': 'string', 'description': 'Short SWPC product ID, e.g. "K04W".'}, 'validFrom': {'type': ['string', 'null'], 'description': 'ISO 8601 UTC validity start stated in the body; null when none.'}, 'phenomenon': {'type': 'string', 'description': 'Phenomenon from the scale letter, e.g. "Geomagnetic".'}, 'messageCode': {'type': 'string', 'description': 'Full message code from the body, e.g. "WARK04".'}, 'productType': {'enum': ['Warning', 'Watch', 'Alert', 'Summary', 'Other'], 'type': 'string', 'description': 'Product type, from the code prefix.'}, 'serialNumber': {'type': ['string', 'null'], 'description': 'SWPC serial number, e.g. "1125"; null when absent. Unique only within messageCode; the Cancel, Extension to, and Continuation of Serial Number lines in message point at it.'}, 'issueDatetime': {'type': 'string', 'description': 'ISO 8601 issue time.'}}, 'description': 'One SWPC product.', 'additionalProperties': False}, 'description': 'Matching SWPC products.'}, 'notice': {'type': 'string', 'description': 'Set when no products were returned.'}, 'fetchedAt': {'type': 'string', 'description': 'ISO 8601 fetch time.'}, 'activeOnly': {'type': 'boolean', 'description': 'Echo of active_only: true for the in-force set, false for every product in the window.'}, 'exclusions': {'type': 'object', 'required': ['agedOut', 'productType', 'cancellationRecord', 'cancelledBySerial', 'superseded', 'validityElapsed'], 'properties': {'agedOut': {'type': 'number', 'description': 'Issued before the window, no validity end ahead.'}, 'superseded': {'type': 'number', 'description': 'Replaced by a newer superseding Watch.'}, 'productType': {'type': 'number', 'description': 'Summaries and unrecognized products.'}, 'validityElapsed': {'type': 'number', 'description': 'Validity end already passed.'}, 'cancelledBySerial': {'type': 'number', 'description': 'Named by a later cancellation.'}, 'cancellationRecord': {'type': 'number', 'description': 'Cancellation notices.'}}, 'description': 'Records active_only=true left out, each counted under its first reason in field order; with totalCount they sum to the feed total. Present only under active_only=true, when something was excluded.', 'additionalProperties': False}, 'totalCount': {'type': 'number', 'description': 'Records in alerts.'}, 'appliedCutoff': {'type': 'string', 'description': 'ISO 8601 UTC start of the applied window. Present only under active_only=true.'}, 'appliedWindowHours': {'type': 'number', 'description': 'max_age_hours as applied. Present only under active_only=true.'}}, 'additionalProperties': False}
noaa_spaceweather_get_aurora_forecast
Get Aurora Forecast
OVATION model aurora forecast for the next ~30–60 min: global grid of aurora probability percentages by latitude/longitude (1° resolution). With optional coordinates, returns the local aurora probability at the nearest grid point, the geomagnetic latitude those coordinates convert to, the minimum Kp and G level needed for aurora at that geomagnetic latitude, the sun’s elevation there at the forecast time (aurora is not visible in daylight), the strongest aurora within 1000 km poleward (visible low on the horizon when bright), and a plain-language go/no-go verdict. Without coordinates, returns only global metadata. Data updates every ~5 minutes. Supply coordinates as geographic (WGS84); aurora bands are geomagnetic, and the tool converts between them.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Geographic latitude in degrees (â\x88\x9290 to 90). Provide with longitude for a local aurora probability lookup.'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Geographic longitude in degrees (â\x88\x92180 to 180). Provide with latitude for a local aurora probability lookup.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['observationTime', 'forecastTime', 'localLookup', 'gridPointCount', 'topAuroraPercent', 'topAuroraRegion']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['feed_unavailable', 'feed_moved', 'invalid_coordinates'], 'description': 'Machine-readable failure mode. Declared by this tool: `feed_unavailable`: SWPC feed returns 5xx or 429, times out, or answers with a body that is not parseable JSON. Retried for up to 45 seconds in total before failing. `feed_moved`: SWPC feed path returns a permanent 4xx (404, 410, 401, 403), or a coordinate lookup finds no parseable Forecast Time in the feed. Fails in one attempt. `invalid_coordinates`: One coordinate provided without the other. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'localLookup': {'anyOf': [{'type': 'object', 'required': ['requestedLatitude', 'requestedLongitude', 'geomagneticLatitude', 'gridLatitude', 'gridLongitude', 'auroraPercent', 'minKpRequired', 'minGScale', 'sunElevationDeg', 'darkness', 'horizonMaxPercent', 'horizonMaxLatitude', 'horizonDistanceKm', 'verdict'], 'properties': {'verdict': {'type': 'string', 'description': 'Visibility verdict, e.g. "Good aurora chance (42%) â\x80\x94 Kpâ\x89¥6.67 (G3) needed at 51.2° geomagnetic."; opens "Not visible â\x80\x94 daylight" when darkness is day.'}, 'darkness': {'enum': ['day', 'civil_twilight', 'nautical_twilight', 'dark'], 'type': 'string', 'description': 'Sky state from sunElevationDeg: day â\x89¥ 0°, civil_twilight â\x89¥ â\x88\x926°, nautical_twilight â\x89¥ â\x88\x9212°, dark below.'}, 'minGScale': {'type': ['number', 'null'], 'description': 'G level for minKpRequired (1â\x80\x935); 0 inside the quiet-time oval; null below 40° geomagnetic, where no storm reaches.'}, 'gridLatitude': {'type': 'number', 'description': 'Nearest grid latitude, in degrees.'}, 'auroraPercent': {'type': 'number', 'description': 'Aurora probability at the nearest grid point (0â\x80\x93100%).'}, 'gridLongitude': {'type': 'number', 'description': 'Nearest grid longitude, in degrees.'}, 'minKpRequired': {'type': 'number', 'description': 'Minimum Kp for aurora here: 4.67, 5.67, 6.67, 7.67, or 9; 0 inside the quiet-time oval (above 65°). Also 9 where no storm reaches (minGScale null).'}, 'sunElevationDeg': {'type': 'number', 'description': 'Solar elevation here at forecastTime, in degrees to 0.1° (no refraction); negative below the horizon.'}, 'horizonDistanceKm': {'type': ['number', 'null'], 'description': 'Distance in km to the horizonMaxPercent cell; null when it is null.'}, 'horizonMaxPercent': {'type': ['number', 'null'], 'description': 'Highest aurora probability (0â\x80\x93100%) poleward of gridLatitude within ±2° longitude and 1000 km; null when no cell qualifies (gridLatitude ±90).'}, 'requestedLatitude': {'type': 'number', 'description': 'Requested geographic latitude, in degrees.'}, 'horizonMaxLatitude': {'type': ['number', 'null'], 'description': 'Grid latitude of horizonMaxPercent, in degrees (nearest on a tie); null when it is null.'}, 'requestedLongitude': {'type': 'number', 'description': 'Requested geographic longitude, in degrees.'}, 'geomagneticLatitude': {'type': 'number', 'description': 'Geomagnetic latitude of the request, in degrees (up to ±9.2° from geographic); minKpRequired and the verdict use it.'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Coordinate lookup; null when no coordinates were given.'}, 'forecastTime': {'type': 'string', 'description': 'ISO 8601 time the forecast is valid for.'}, 'gridPointCount': {'type': 'number', 'description': 'OVATION grid point count.'}, 'observationTime': {'type': 'string', 'description': 'ISO 8601 OVATION observation time.'}, 'topAuroraRegion': {'type': 'string', 'description': 'Location of the highest grid point, e.g. "67°N, 20°W"; "Unknown" when every cell is 0%.'}, 'topAuroraPercent': {'type': 'number', 'description': 'Highest aurora probability on the globe (0â\x80\x93100%).'}}, 'additionalProperties': False}
noaa_spaceweather_get_conditions
Get Space Weather Conditions
Current space-weather snapshot: NOAA R/S/G storm scales (the previous UTC day, today, and the 3-day forecast), latest Kp index with its G-scale equivalent and aurora-visibility latitude, and a plain-language status summary. Optionally includes the SWPC forecast discussion explaining what is driving the forecast. The quickest way to answer "is anything happening right now?" — use before deciding whether to drill into solar wind (noaa_spaceweather_get_solar_wind), aurora (noaa_spaceweather_get_aurora_forecast), or alert details (noaa_spaceweather_get_alerts).
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'include_discussion': {'type': 'boolean', 'default': False, 'description': "Also fetch SWPC's forecaster-written Forecast Discussion, which explains why the forecast looks the way it does (CME versus coronal-hole stream, expected arrival). Costs one extra upstream request."}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['observedAt', 'currentKp', 'currentGScale', 'auroraLatitude', 'yesterday', 'today', 'forecast', 'summary', 'discussion']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['feed_unavailable', 'feed_moved'], 'description': 'Machine-readable failure mode. Declared by this tool: `feed_unavailable`: SWPC feed returns 5xx or 429, times out, or answers with a body that is not parseable JSON. Retried for up to 45 seconds in total before failing. `feed_moved`: SWPC feed path returns a permanent 4xx (404, 410, 401, 403), or a feed answers without the shape it is documented to have â\x80\x94 the scales feed no longer carrying its "0" (today) period, or the forecast discussion carrying no topic section. Fails in one attempt. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'today': {'type': 'object', 'required': ['G', 'R', 'S'], 'properties': {'G': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': "Today's G level.", 'additionalProperties': False}, 'R': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': "Today's R level.", 'additionalProperties': False}, 'S': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': "Today's S level.", 'additionalProperties': False}}, 'description': 'Observed R/S/G levels for today.', 'additionalProperties': False}, 'summary': {'type': 'string', 'description': 'Plain-language status, e.g. "G2 moderate geomagnetic storm in progress."'}, 'forecast': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'G', 'R', 'S'], 'properties': {'G': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': 'Forecast G level.', 'additionalProperties': False}, 'R': {'type': 'object', 'required': ['scale', 'text', 'label', 'minorProbPercent', 'majorProbPercent'], 'properties': {'text': {'type': ['string', 'null'], 'description': 'R descriptor; null when no level was issued.'}, 'label': {'type': ['string', 'null'], 'description': 'Label, e.g. "R1"; null when no level was issued.'}, 'scale': {'type': ['number', 'null'], 'description': 'R level 0â\x80\x935; null when SWPC issued a probability, not a level.'}, 'majorProbPercent': {'type': ['number', 'null'], 'description': 'Chance (%) of an R3+ blackout this day; null when none issued.'}, 'minorProbPercent': {'type': ['number', 'null'], 'description': 'Chance (%) of an R1â\x80\x93R2 blackout this day; null when none issued.'}}, 'description': 'R outlook: a level, probabilities, or neither.', 'additionalProperties': False}, 'S': {'type': 'object', 'required': ['scale', 'text', 'label', 'probPercent'], 'properties': {'text': {'type': ['string', 'null'], 'description': 'S descriptor; null when no level was issued.'}, 'label': {'type': ['string', 'null'], 'description': 'Label, e.g. "S1"; null when no level was issued.'}, 'scale': {'type': ['number', 'null'], 'description': 'S level 0â\x80\x935; null when SWPC issued a probability, not a level.'}, 'probPercent': {'type': ['number', 'null'], 'description': 'Chance (%) of an S1+ radiation storm this day; null when none issued.'}}, 'description': 'S outlook: a level, a probability, or neither.', 'additionalProperties': False}, 'date': {'type': 'string', 'description': 'Forecast date, e.g. "2026-06-04".'}}, 'description': 'One forecast day.', 'additionalProperties': False}, 'description': '3-day scale forecast, oldest first; starts with today (the date of observedAt).'}, 'currentKp': {'type': 'number', 'description': 'Latest observed planetary K-index (0â\x80\x939).'}, 'yesterday': {'anyOf': [{'type': 'object', 'required': ['date', 'G', 'R', 'S'], 'properties': {'G': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': 'Assessed G level.', 'additionalProperties': False}, 'R': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': 'Assessed R level.', 'additionalProperties': False}, 'S': {'type': 'object', 'required': ['scale', 'text', 'label'], 'properties': {'text': {'type': 'string', 'description': 'Descriptor, e.g. "Moderate"; "none" at level 0.'}, 'label': {'type': 'string', 'description': 'Label, e.g. "G2".'}, 'scale': {'type': 'number', 'description': 'Level 0â\x80\x935.'}}, 'description': 'Assessed S level.', 'additionalProperties': False}, 'date': {'type': 'string', 'description': 'Previous UTC day, e.g. "2026-06-03".'}}, 'description': 'Levels SWPC assessed for the previous UTC day.', 'additionalProperties': False}, {'type': 'null'}], 'description': 'R/S/G levels assessed for the previous UTC day (a date, no time). Null when the feed lacks that period or a level; null never means level 0.'}, 'discussion': {'anyOf': [{'type': 'object', 'required': ['issued', 'sections'], 'properties': {'issued': {'type': ['string', 'null'], 'description': 'ISO 8601 UTC issue time from the ":Issued:" line; null when absent.'}, 'sections': {'type': 'array', 'items': {'type': 'object', 'required': ['topic', 'summary', 'forecast'], 'properties': {'topic': {'type': 'string', 'description': 'Section heading, e.g. "Solar Activity".'}, 'summary': {'type': ['string', 'null'], 'description': 'Past-24 h summary text; null when the section has none.'}, 'forecast': {'type': ['string', 'null'], 'description': 'Next-3-day forecast text; null when the section has none.'}}, 'description': 'One topic section.', 'additionalProperties': False}, 'description': 'Topic sections, in product order.'}}, 'description': "SWPC forecaster's narrative behind the scales.", 'additionalProperties': False}, {'type': 'null'}], 'description': 'SWPC Forecast Discussion; null unless include_discussion is true.'}, 'observedAt': {'type': 'string', 'description': 'ISO 8601 UTC time of the scales data period, e.g. "2026-06-04T15:00:00Z".'}, 'currentGScale': {'type': 'number', 'description': 'G level (0â\x80\x935) for currentKp.'}, 'auroraLatitude': {'type': 'string', 'description': 'Aurora guidance for currentKp, e.g. "Aurora possible to ~55° geomagnetic latitude".'}}, 'additionalProperties': False}
noaa_spaceweather_get_kp_index
Get Kp Index
Planetary K-index (0–9 geomagnetic activity scale) — recent observed 3-hour values with their NOAA G-scale equivalents and aurora-latitude guidance, plus the 3-day Kp forecast series. Kp is the primary driver of aurora visibility and geomagnetic storm severity. SWPC reports Kp in thirds and starts each G level at that level’s "minus" value: Kp 4.67 (5−) is G1, Kp 6.67 (7−) is G3 (aurora to ~50° geomagnetic), Kp 8.67 (9−) is still G4, and only Kp 9 is G5 extreme. Use noaa_spaceweather_get_conditions for a combined snapshot including storm scales; use this tool when you need the Kp time series or forecast detail.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'window_days': {'type': 'integer', 'default': 1, 'maximum': 7, 'minimum': 1, 'description': 'Number of past days of observed Kp to return (1â\x80\x937, default 1). Larger windows show trend context.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['observed', 'forecast', 'currentKp', 'currentGScale', 'auroraLatitude', 'observedCount']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['feed_unavailable', 'feed_moved'], 'description': 'Machine-readable failure mode. Declared by this tool: `feed_unavailable`: SWPC feed returns 5xx or 429, times out, or answers with a body that is not parseable JSON. Retried for up to 45 seconds in total before failing. `feed_moved`: SWPC feed path returns a permanent 4xx (404, 410, 401, 403). Fails in one attempt. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'forecast': {'type': 'array', 'items': {'type': 'object', 'required': ['timeTag', 'kp', 'observed', 'noaaScale', 'gScale', 'gLabel'], 'properties': {'kp': {'type': 'number', 'description': 'Forecast Kp value (0â\x80\x939).'}, 'gLabel': {'type': 'string', 'description': 'G label, e.g. "G3".'}, 'gScale': {'type': 'number', 'description': 'G level (0â\x80\x935) derived from kp; matches noaaScale when stated.'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 forecast interval time tag.'}, 'observed': {'type': 'string', 'description': '"estimated" (near-real-time model) or "predicted".'}, 'noaaScale': {'type': ['string', 'null'], 'description': 'NOAA scale the feed states, e.g. "G1"; null when none.'}}, 'description': 'One Kp forecast interval.', 'additionalProperties': False}, 'description': 'Kp forecast series: estimated and predicted entries, no observed history.'}, 'observed': {'type': 'array', 'items': {'type': 'object', 'required': ['timeTag', 'kp', 'gScale', 'gLabel', 'auroraLatitude'], 'properties': {'kp': {'type': 'number', 'description': 'Kp value (0â\x80\x939).'}, 'gLabel': {'type': 'string', 'description': 'G label, e.g. "G3".'}, 'gScale': {'type': 'number', 'description': 'G level (0â\x80\x935) for this Kp; G1 starts at 4.67, G5 at 9.'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 3-hour interval time tag.'}, 'auroraLatitude': {'type': 'string', 'description': 'Aurora guidance for this Kp, in geomagnetic latitude.'}}, 'description': 'One observed 3-hour Kp interval.', 'additionalProperties': False}, 'description': 'Observed Kp in the window, oldest first.'}, 'currentKp': {'type': 'number', 'description': 'Latest observed Kp; 0 when the window has none.'}, 'currentGScale': {'type': 'number', 'description': 'G level (0â\x80\x935) for currentKp.'}, 'observedCount': {'type': 'number', 'description': 'Entries in observed.'}, 'auroraLatitude': {'type': 'string', 'description': 'Aurora guidance for currentKp.'}}, 'additionalProperties': False}
noaa_spaceweather_get_solar_activity
Get Solar Activity
Solar flare and radiation storm picture: discrete flare events from the past week with peak class and R-scale level, recent GOES X-ray flux with flare-class labels (A/B/C/M/X) and class magnitude, the daily F10.7 cm solar radio flux, 3-day flare-class probabilities (C/M/X), active solar regions with per-region flare probabilities, and GOES integral proton flux at ≥10 MeV with NOAA S-scale. For operators tracking HF radio blackout (R-scale, driven by X-ray) and radiation storm risk (S-scale, driven by protons). Each active region carries the C/M/X flare counts SWPC attributed to it that UTC day, which identify the region driving current activity — the flare events themselves carry no region.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'flare_hours': {'type': 'integer', 'default': 24, 'maximum': 168, 'minimum': 1, 'description': 'How far back to report discrete flare events, in hours before now, filtered on each flareâ\x80\x99s onset time (1â\x80\x93168, default 24). The feed keeps a rolling 7 days, so 168 returns everything it carries. When the window comes back empty, the response names the newest flare the feed holds.'}, 'include_regions': {'type': 'boolean', 'default': True, 'description': 'Include active solar region details (default true). Set false to skip region data and reduce response size.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['latestXray', 'recentXray', 'recentFlares', 'f107', 'probabilities', 'latestProton', 'sScale', 'sScaleText', 'activeRegions', 'fetchedAt']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'f107': {'anyOf': [{'type': 'object', 'required': ['observedTime', 'fluxSfu', 'ninetyDayMeanSfu', 'reportingSchedule'], 'properties': {'fluxSfu': {'type': 'number', 'description': '10.7 cm (2800 MHz) solar radio flux, in sfu.'}, 'observedTime': {'type': 'string', 'description': 'ISO 8601 UTC observation time; can be ~24 h old.'}, 'ninetyDayMeanSfu': {'type': ['number', 'null'], 'description': '90-day mean flux in sfu; null when the record carries none.'}, 'reportingSchedule': {'type': 'string', 'description': 'Penticton report: "Morning", "Noon", or "Afternoon".'}}, 'description': 'Daily F10.7 reading.', 'additionalProperties': False}, {'type': 'null'}], 'description': "Latest Noon report, SWPC's daily F10.7 value; null when the feed has none."}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['feed_unavailable', 'feed_moved'], 'description': 'Machine-readable failure mode. Declared by this tool: `feed_unavailable`: SWPC feed returns 5xx or 429, times out, or answers with a body that is not parseable JSON. Retried for up to 45 seconds in total before failing. `feed_moved`: SWPC feed path returns a permanent 4xx (404, 410, 401, 403). Fails in one attempt. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'Set when no flare began in the flare_hours window: names the newest flare in the feed, or says the feed has none.'}, 'sScale': {'type': 'number', 'description': 'Current S level (0â\x80\x935) from latestProton; 0 without a reading.'}, 'fetchedAt': {'type': 'string', 'description': 'ISO 8601 fetch time.'}, 'latestXray': {'anyOf': [{'type': 'object', 'required': ['timeTag', 'fluxWm2', 'fluxWm2Value', 'flareClass', 'flareClassFull', 'satellite'], 'properties': {'fluxWm2': {'type': 'string', 'description': 'Long-channel (0.1â\x80\x930.8 nm) X-ray flux for display, e.g. "1.4e-6 W/m²".'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}, 'satellite': {'type': 'number', 'description': 'GOES satellite number.'}, 'flareClass': {'type': 'string', 'description': 'Flare class letter: A, B, C, M, or X.'}, 'fluxWm2Value': {'type': 'number', 'description': 'fluxWm2 as an unformatted number, in W/m².'}, 'flareClassFull': {'type': ['string', 'null'], 'description': 'Class with magnitude, e.g. "B2.5"; null below A1 (1e-8 W/m²), zero and negative readings included.'}}, 'description': 'One GOES X-ray reading.', 'additionalProperties': False}, {'type': 'null'}], 'description': 'Newest X-ray reading; null when the feed is empty.'}, 'recentXray': {'type': 'array', 'items': {'type': 'object', 'required': ['timeTag', 'fluxWm2', 'fluxWm2Value', 'flareClass', 'flareClassFull', 'satellite'], 'properties': {'fluxWm2': {'type': 'string', 'description': 'Long-channel (0.1â\x80\x930.8 nm) X-ray flux for display, e.g. "1.4e-6 W/m²".'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}, 'satellite': {'type': 'number', 'description': 'GOES satellite number.'}, 'flareClass': {'type': 'string', 'description': 'Flare class letter: A, B, C, M, or X.'}, 'fluxWm2Value': {'type': 'number', 'description': 'fluxWm2 as an unformatted number, in W/m².'}, 'flareClassFull': {'type': ['string', 'null'], 'description': 'Class with magnitude, e.g. "B2.5"; null below A1 (1e-8 W/m²), zero and negative readings included.'}}, 'description': 'One GOES X-ray reading.', 'additionalProperties': False}, 'description': 'X-ray readings from the past hour, oldest first.'}, 'sScaleText': {'type': 'string', 'description': 'S level descriptor, e.g. "S2 moderate radiation storm".'}, 'latestProton': {'anyOf': [{'type': 'object', 'required': ['timeTag', 'fluxPfu', 'sScale', 'energy'], 'properties': {'energy': {'type': 'string', 'description': 'Energy channel, e.g. ">=10 MeV".'}, 'sScale': {'type': 'number', 'description': 'S level (0â\x80\x935) for this flux.'}, 'fluxPfu': {'type': 'number', 'description': 'â\x89¥10 MeV integral proton flux in pfu, to 3 significant figures.'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}}, 'description': 'One GOES proton flux reading.', 'additionalProperties': False}, {'type': 'null'}], 'description': 'Newest â\x89¥10 MeV proton reading; null when the feed is empty.'}, 'recentFlares': {'type': 'array', 'items': {'type': 'object', 'required': ['beginTime', 'maxTime', 'endTime', 'beginClass', 'maxClass', 'endClass', 'peakFluxWm2', 'rScale', 'satellite'], 'properties': {'rScale': {'type': 'number', 'description': 'R level (0â\x80\x935) the peak flux implies; 0 is below R1.'}, 'endTime': {'type': ['string', 'null'], 'description': 'ISO 8601 UTC decay time; null while in progress.'}, 'maxTime': {'type': 'string', 'description': 'ISO 8601 UTC peak time.'}, 'endClass': {'type': ['string', 'null'], 'description': 'Class at decay; null while in progress.'}, 'maxClass': {'type': 'string', 'description': 'Peak class as SWPC publishes it, e.g. "M5.2".'}, 'beginTime': {'type': 'string', 'description': 'ISO 8601 UTC onset time.'}, 'satellite': {'type': 'number', 'description': 'GOES satellite number.'}, 'beginClass': {'type': 'string', 'description': 'Class at onset, e.g. "B4.2".'}, 'peakFluxWm2': {'type': 'number', 'description': 'Peak long-channel (0.1â\x80\x930.8 nm) flux, in W/m².'}}, 'description': 'One GOES X-ray flare event.', 'additionalProperties': False}, 'description': 'Flares with onset inside flare_hours, oldest first; empty when none began.'}, 'activeRegions': {'type': 'array', 'items': {'type': 'object', 'required': ['region', 'location', 'latitude', 'spotClass', 'numberSpots', 'magClass', 'areaMillionths', 'firstObserved', 'cFlareCount', 'mFlareCount', 'xFlareCount', 'cFlareProbability', 'mFlareProbability', 'xFlareProbability', 'protonProbability', 'observedDate'], 'properties': {'region': {'type': 'number', 'description': 'NOAA active region number.'}, 'latitude': {'type': 'string', 'description': 'Heliographic latitude, e.g. "N17".'}, 'location': {'type': 'string', 'description': 'Heliographic location, e.g. "N17E47".'}, 'magClass': {'type': 'string', 'description': 'Magnetic class, e.g. "B"; empty for a spotless region.'}, 'spotClass': {'type': 'string', 'description': 'Sunspot class, e.g. "Dsi"; empty for a spotless region (plage).'}, 'cFlareCount': {'type': 'number', 'description': 'C-class flares SWPC credited to this region on observedDate.'}, 'mFlareCount': {'type': 'number', 'description': 'M-class flares SWPC credited to this region on observedDate.'}, 'numberSpots': {'type': 'number', 'description': 'Sunspot count; 0 for a spotless region.'}, 'xFlareCount': {'type': 'number', 'description': 'X-class flares SWPC credited to this region on observedDate.'}, 'observedDate': {'type': 'string', 'description': 'UTC observation date: the flare counts cover it, the probabilities the next day.'}, 'firstObserved': {'type': 'string', 'description': 'ISO 8601 UTC time SWPC first recorded this region.'}, 'areaMillionths': {'type': ['number', 'null'], 'description': 'Sunspot area in millionths of the hemisphere; null for a spotless region.'}, 'cFlareProbability': {'type': 'number', 'description': 'C-class flare chance (%) for the UTC day after observedDate.'}, 'mFlareProbability': {'type': 'number', 'description': 'M-class flare chance (%) for the UTC day after observedDate.'}, 'protonProbability': {'type': 'number', 'description': 'Proton event chance (%) for the UTC day after observedDate.'}, 'xFlareProbability': {'type': 'number', 'description': 'X-class flare chance (%) for the UTC day after observedDate.'}}, 'description': 'One active solar region.', 'additionalProperties': False}, 'description': 'Active regions; empty when include_regions=false or none are active.'}, 'probabilities': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'cClass1Day', 'cClassProbability', 'mClass1Day', 'mClassProbability', 'xClass1Day', 'xClassProbability', 'protons1Day', 'protonEventProbability'], 'properties': {'date': {'type': 'string', 'description': 'Forecast date.'}, 'cClass1Day': {'type': 'number', 'description': 'Deprecated: use cClassProbability (same value).'}, 'mClass1Day': {'type': 'number', 'description': 'Deprecated: use mClassProbability (same value).'}, 'xClass1Day': {'type': 'number', 'description': 'Deprecated: use xClassProbability (same value).'}, 'protons1Day': {'type': 'number', 'description': 'Deprecated: use protonEventProbability (same value).'}, 'cClassProbability': {'type': 'number', 'description': 'C-class flare chance (%) for this date.'}, 'mClassProbability': {'type': 'number', 'description': 'M-class flare chance (%) for this date.'}, 'xClassProbability': {'type': 'number', 'description': 'X-class flare chance (%) for this date.'}, 'protonEventProbability': {'type': 'number', 'description': 'â\x89¥10 MeV proton event chance (%) for this date.'}}, 'description': 'Flare probabilities for one day.', 'additionalProperties': False}, 'description': '3-day flare probability forecast.'}}, 'additionalProperties': False}
noaa_spaceweather_get_solar_wind
Get Solar Wind
Real-time solar wind measurements from the active spacecraft at L1: proton speed (km/s), density (n/cm³), temperature (K), and the critical Bz component (southward Bz = negative = storm driver). Returns the recent plasma and magnetic field time series within the requested window, oldest first, each record tagged with the reporting spacecraft and bounded to 200 records per series unless resolution is set to "full" — or omitted entirely under "summary", which keeps the latest readings, Bz status, and window extremes (peak speed, density, and Bt; most southward Bz; minutes of southward Bz) for "what is Bz doing now" questions. Bz < −10 nT for sustained periods is a primary geomagnetic storm trigger — use alongside noaa_spaceweather_get_kp_index to see whether elevated solar wind has translated into a geomagnetic storm.
Nur Lesen Externer Zugriff Idempotent
Eingabeschema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'resolution': {'enum': ['summary', 'reduced', 'full'], 'type': 'string', 'default': 'reduced', 'description': 'Detail level of the returned plasma and mag series. "summary" returns both series empty and keeps every headline field â\x80\x94 about 2 KB whatever the window. "reduced" (default) bounds each series to at most 200 records: the window is bucketed by record count and one real measurement is emitted per bucket â\x80\x94 the bucket\'s fastest speed for plasma, its most southward Bz for mag â\x80\x94 with the newest record in the window always last. A series already inside the bound is returned untouched, so a default 3-hour call is unaffected. "full" returns every record in the window (~1,400 per series over 24 hours, a ~540 KB response). The headline fields â\x80\x94 latestPlasma, latestMag, bzStatus, bzMinInWindow, and the window maxima and southward-Bz minutes â\x80\x94 are computed from the full window at every resolution.'}, 'window_hours': {'type': 'integer', 'default': 3, 'maximum': 168, 'minimum': 1, 'description': 'Hours of recent solar wind history to return (1â\x80\x93168, default 3). Records update ~every 1 min, but the feed only carries roughly the last 24 hours â\x80\x94 a larger window returns the whole feed, not more history, and at the default resolution the returned series stay bounded to 200 records each rather than growing with the window. When a window comes back empty, feedStalenessHours and latestFeedPlasmaTime/latestFeedMagTime report how current the feed actually is.'}}, 'additionalProperties': False}
Ausgabeschema
{'type': 'object', 'anyOf': [{'not': {'required': ['error']}, 'required': ['plasma', 'mag', 'latestPlasma', 'latestMag', 'bzStatus', 'plasmaCount', 'magCount', 'bzMinInWindow', 'bzMinTimeTag', 'bzSouthMinutesInWindow', 'speedMaxInWindow', 'speedMaxTimeTag', 'densityMaxInWindow', 'btMaxInWindow', 'latestFeedPlasmaTime', 'latestFeedMagTime', 'feedStalenessHours']}, {'required': ['error']}], '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'mag': {'type': 'array', 'items': {'type': 'object', 'required': ['timeTag', 'source', 'bxGsm', 'byGsm', 'bzGsm', 'bt'], 'properties': {'bt': {'type': ['number', 'null'], 'description': 'Total field Bt in nT; null when missing.'}, 'bxGsm': {'type': ['number', 'null'], 'description': 'Bx, GSM, in nT; null when missing.'}, 'byGsm': {'type': ['number', 'null'], 'description': 'By, GSM, in nT; null when missing.'}, 'bzGsm': {'type': ['number', 'null'], 'description': 'Bz, GSM, in nT; negative (southward) drives storms; null when missing.'}, 'source': {'type': 'string', 'description': 'Reporting spacecraft, e.g. "SOLAR1".'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}}, 'description': 'One L1 magnetic field record.', 'additionalProperties': False}, 'description': 'Mag records in the window, oldest first. "reduced": at most 200, each its bucket\'s most southward Bz; the last equals latestMag. Empty under "summary".'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'JSON-RPC error code for this failure.'}, 'data': {'type': 'object', 'properties': {'reason': {'type': 'string', 'examples': ['feed_unavailable', 'feed_moved'], 'description': 'Machine-readable failure mode. Declared by this tool: `feed_unavailable`: SWPC feed returns 5xx or 429, times out, or answers with a body that is not parseable JSON. Retried for up to 45 seconds in total before failing. `feed_moved`: SWPC feed path returns a permanent 4xx (404, 410, 401, 403). Fails in one attempt. Other values are possible when a failure originates below the handler.'}, 'recovery': {'type': 'object', 'required': ['hint'], 'properties': {'hint': {'type': 'string'}}, 'description': 'Actionable next step for the caller.', 'additionalProperties': {}}, 'retryable': {'type': 'boolean', 'description': 'Whether retrying may succeed.'}}, 'additionalProperties': {}}, 'message': {'type': 'string', 'description': 'Human-readable description of what went wrong.'}}, 'description': 'Present when the call failed. Absent on success.', 'additionalProperties': {}}, 'notice': {'type': 'string', 'description': 'What shaped the response: an empty window (with the newest feed record), series bounded to 200 records, or series omitted under "summary".'}, 'plasma': {'type': 'array', 'items': {'type': 'object', 'required': ['timeTag', 'source', 'densityPerCm3', 'speedKmS', 'temperatureK'], 'properties': {'source': {'type': 'string', 'description': 'Reporting spacecraft, e.g. "SOLAR1".'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}, 'speedKmS': {'type': ['number', 'null'], 'description': 'Solar wind speed in km/s; null when missing.'}, 'temperatureK': {'type': ['number', 'null'], 'description': 'Proton temperature in K; null when missing.'}, 'densityPerCm3': {'type': ['number', 'null'], 'description': 'Proton density in particles/cm³; null when missing.'}}, 'description': 'One L1 plasma record.', 'additionalProperties': False}, 'description': 'Plasma records in the window, oldest first. "reduced": at most 200, each its bucket\'s fastest speed, newest last. Empty under "summary".'}, 'bzStatus': {'type': 'string', 'description': 'Bz status from latestMag, e.g. "Southward Bz -14 nT â\x80\x94 storm-driving conditions."; "Bz data unavailable." without a reading.'}, 'magCount': {'type': 'number', 'description': 'Records in mag (magWindowRecords has the pre-reduction total); under "summary", the records the window held.'}, 'latestMag': {'anyOf': [{'type': 'object', 'required': ['timeTag', 'source', 'bxGsm', 'byGsm', 'bzGsm', 'bt'], 'properties': {'bt': {'type': ['number', 'null'], 'description': 'Total field Bt in nT; null when missing.'}, 'bxGsm': {'type': ['number', 'null'], 'description': 'Bx, GSM, in nT; null when missing.'}, 'byGsm': {'type': ['number', 'null'], 'description': 'By, GSM, in nT; null when missing.'}, 'bzGsm': {'type': ['number', 'null'], 'description': 'Bz, GSM, in nT; negative (southward) drives storms; null when missing.'}, 'source': {'type': 'string', 'description': 'Reporting spacecraft, e.g. "SOLAR1".'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}}, 'description': 'One L1 magnetic field record.', 'additionalProperties': False}, {'type': 'null'}], 'description': 'Newest mag record in the window; null when the window has none.'}, 'plasmaCount': {'type': 'number', 'description': 'Records in plasma (plasmaWindowRecords has the pre-reduction total); under "summary", the records the window held.'}, 'bzMinTimeTag': {'type': ['string', 'null'], 'description': 'ISO 8601 time of bzMinInWindow; null when it is null.'}, 'latestPlasma': {'anyOf': [{'type': 'object', 'required': ['timeTag', 'source', 'densityPerCm3', 'speedKmS', 'temperatureK'], 'properties': {'source': {'type': 'string', 'description': 'Reporting spacecraft, e.g. "SOLAR1".'}, 'timeTag': {'type': 'string', 'description': 'ISO 8601 measurement time.'}, 'speedKmS': {'type': ['number', 'null'], 'description': 'Solar wind speed in km/s; null when missing.'}, 'temperatureK': {'type': ['number', 'null'], 'description': 'Proton temperature in K; null when missing.'}, 'densityPerCm3': {'type': ['number', 'null'], 'description': 'Proton density in particles/cm³; null when missing.'}}, 'description': 'One L1 plasma record.', 'additionalProperties': False}, {'type': 'null'}], 'description': 'Newest plasma record in the window; null when the window has none.'}, 'btMaxInWindow': {'type': ['number', 'null'], 'description': 'Peak Bt in nT across the whole window; null when it has no Bt.'}, 'bzMinInWindow': {'type': ['number', 'null'], 'description': 'Most southward Bz in nT across the whole window; null when it has no Bz.'}, 'speedMaxTimeTag': {'type': ['string', 'null'], 'description': 'ISO 8601 time of speedMaxInWindow; null when it is null.'}, 'magBucketRecords': {'type': 'number', 'description': 'Mag records per emitted record, 1 if untouched. Present only after a reduction.'}, 'magWindowRecords': {'type': 'number', 'description': 'Mag records in the window before reduction. Present after a reduction or under "summary".'}, 'speedMaxInWindow': {'type': ['number', 'null'], 'description': 'Peak speed in km/s across the whole window; null when it has no speed.'}, 'latestFeedMagTime': {'type': ['string', 'null'], 'description': 'ISO 8601 time of the newest mag record in the feed, window aside; null when none.'}, 'densityMaxInWindow': {'type': ['number', 'null'], 'description': 'Peak proton density in particles/cm³ across the whole window; null when none.'}, 'feedStalenessHours': {'type': ['number', 'null'], 'description': 'Hours from the newest record in either feed to now; null when both are empty.'}, 'plasmaBucketRecords': {'type': 'number', 'description': 'Plasma records per emitted record, 1 if untouched. Present only after a reduction.'}, 'plasmaWindowRecords': {'type': 'number', 'description': 'Plasma records in the window before reduction. Present after a reduction or under "summary".'}, 'latestFeedPlasmaTime': {'type': ['string', 'null'], 'description': 'ISO 8601 time of the newest plasma record in the feed, window aside; null when none.'}, 'bzSouthMinutesInWindow': {'type': 'number', 'description': 'Minutes of Bz < 0: 1-minute mag records across the whole window. Feed gaps are not counted. 0 when none.'}}, 'additionalProperties': False}
Geändert
noaa_spaceweather_get_aurora_forecast
25. September 2026 02:51
Geändert
noaa_spaceweather_get_solar_activity
25. September 2026 02:51
Geändert
noaa_spaceweather_get_solar_wind
25. September 2026 02:51
Geändert
noaa_spaceweather_get_kp_index
25. September 2026 02:51
Geändert
noaa_spaceweather_get_alerts
25. September 2026 02:51
Geändert
noaa_spaceweather_get_conditions
25. September 2026 02:51
Geändert
noaa_spaceweather_get_aurora_forecast
19. September 2026 02:41
Geändert
noaa_spaceweather_get_solar_activity
19. September 2026 02:41
Geändert
noaa_spaceweather_get_solar_wind
19. September 2026 02:41
Geändert
noaa_spaceweather_get_kp_index
19. September 2026 02:41
Geändert
noaa_spaceweather_get_alerts
19. September 2026 02:41
Geändert
noaa_spaceweather_get_conditions
19. September 2026 02:41
Hinzugefügt
noaa_spaceweather_get_aurora_forecast
17. September 2026 12:41
Hinzugefügt
noaa_spaceweather_get_solar_activity
17. September 2026 12:41
Hinzugefügt
noaa_spaceweather_get_solar_wind
17. September 2026 12:41
Hinzugefügt
noaa_spaceweather_get_kp_index
17. September 2026 12:41
Hinzugefügt
noaa_spaceweather_get_alerts
17. September 2026 12:41
Hinzugefügt
noaa_spaceweather_get_conditions
17. September 2026 12:41