Skip to main content
Glama

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

Related MCP server: io.github.qso-graph/ionis-mcp

Tools

Tool

Description

solar_conditions

Current SFI, Kp, and NOAA R/S/G space weather scales

solar_forecast

27-day SFI and Kp forecast from NOAA

solar_alerts

Active space weather alerts and warnings

solar_wind

Real-time DSCOVR L1 solar wind (Bz, speed, density)

solar_xray

GOES X-ray flux and solar flare classification

solar_band_outlook

HF band-by-band propagation assessment (160m-6m), each band rated on the scale in BAND-OUTLOOK.md

get_version_info

Service 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:

Data

Endpoint

Used by

10.7 cm solar flux (SFI)

/products/summary/10cm-flux.json

solar_conditions, solar_band_outlook

Planetary K-index

/products/noaa-planetary-k-index.json

solar_conditions, solar_band_outlook

NOAA R/S/G scales

/products/noaa-scales.json

solar_conditions

Space weather alerts

/products/alerts.json

solar_alerts

27-day outlook

/text/27-day-outlook.txt

solar_forecast

Solar wind (real-time, 1 minute)

/json/rtsw/rtsw_wind_1m.json, /json/rtsw/rtsw_mag_1m.json

solar_wind

GOES X-ray flux

/json/goes/primary/xrays-6-hour.json

solar_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

Available Tools

7 tools
get_version_infoGet Version InfoA
Read-onlyIdempotent

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.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds genuine context beyond that — that it reports the running PyPI version and the current NOAA SWPC endpoint revision, and that comparison can be done inside the MCP protocol — which helps an agent understand the tool's operational role.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core purpose in the first sentence, then elaborates on return values and usage. Slightly expanded but each clause contributes; 'without going outside the MCP protocol' is a minor flourish but reinforces the self-contained comparison use case.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, zero-parameter metadata tool with rich annotations and an output schema, the description covers what it does, what it returns, and why an agent would call it. Complete enough that nothing needed for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 for a no-parameter tool is appropriate; no parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: retrieving solar-mcp service version and the upstream NOAA SWPC spec revision. The description names exactly what is returned (service_version, spec_version), which is unambiguous and clearly distinct from the data-fetching siblings (solar_conditions, solar_forecast, etc.).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides a clear use case: confirming fleet alignment across deployments by comparing service_version and spec_version across servers to detect drift. There are no meaningful alternatives among siblings to exclude, so the absence of 'when-not-to-use' guidance is minor rather than a gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solar_alertsSolar AlertsA
Read-onlyIdempotent

Get active NOAA space weather alerts and warnings.

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

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world). The description adds value by enumerating the bulletin categories returned (flare alerts, geomagnetic storm warnings, radiation storm alerts), but says nothing about severity levels, timestamps, or empty-result behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the core action, and the second sentence adds concrete content taxonomy rather than filler. Slightly more compact phrasing could tighten it further, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no input parameters, an output schema present, and annotations covering safety and openness, the description supplies enough for correct invocation. Only the distinction from sibling solar tools remains unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies for a no-argument tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get active NOAA space weather alerts and warnings') and scopes it to current/active bulletins. It does not explicitly contrast itself with siblings like solar_forecast or solar_conditions, so the agent must infer the boundary from the word 'active'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: 'active' suggests real-time bulletins rather than predictions or historical readings, which loosely separates it from solar_forecast. There is no explicit when-to-use statement or naming of alternatives among the six sibling solar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solar_band_outlookSolar Band OutlookA
Read-onlyIdempotent

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 " — ", 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.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare it as a safe, idempotent, open-world read; the description goes beyond that by disclosing the derivation source (current SFI and Kp), the fact that thresholds are rules of thumb rather than a propagation model, and the special-cased 6m Sporadic rating that is not graded from indices. That is exactly the kind of interpretive caveat an agent needs to trust and frame the output.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and scope, then the rating vocabulary, then the caveat. The five-status enumeration is somewhat long and partially overlaps the available output schema, but it earns its place as interpretive guidance rather than raw format description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema, the description supplies the missing semantic layer: what the status words mean, how they are derived, and their limits. Nothing an agent needs to select or interpret this tool is absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so there is nothing for the description to disambiguate; baseline 4 applies. The description correctly notes the implicit inputs (current SFI and Kp) are read from ambient conditions rather than passed in.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb + resource: derives an HF band-by-band propagation assessment from current SFI/Kp, which cleanly separates it from the raw-data siblings (solar_conditions, solar_forecast, solar_wind). It also states scope (160m through 6m) and the consumer decision it supports.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Useful for deciding which band to operate on right now" gives a clear usage context and implies the input dependency (current SFI and Kp). It does not explicitly route to siblings (e.g. use solar_conditions for the raw numbers), so it falls short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solar_conditionsSolar ConditionsA
Read-onlyIdempotent

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.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, open-world, non-destructive, so the safety profile is fully covered. The description adds real value by naming the returned indices and noting the HF outlook is 'derived from current indices', but says nothing about data freshness, caching, or source of the readings.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the verb+resource, followed by a compact enumeration of return contents. No filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With rich annotations and an output schema, the description covers all an agent needs to invoke it. The one unresolved ambiguity is the overlap with solar_band_outlook, since this tool also mentions an HF band outlook without clarifying the relationship.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters, so baseline is 4 per the rubric. Nothing in the input schema needs explaining and the description correctly implies this is a no-argument call.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get current solar conditions') and enumerates the payload (SFI, Kp, NOAA R/S/G scales). It implicitly contrasts with forecast/alert siblings via 'current', but never names solar_forecast, solar_wind, or solar_xray, so an agent still has to infer the boundary itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: 'current' signals this is the snapshot tool rather than the forecast or alert stream. There is no explicit when-to-use/when-not statement and no alternative named, despite six sibling tools in the same domain.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solar_forecastSolar ForecastA
Read-onlyIdempotent

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.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, and open-world, so the safety profile is covered. The description adds genuine value beyond that: the upstream source (NOAA) and the fact that these are predicted, not observed, values over a 27-day window. It does not mention refresh cadence, caching, or behavior on upstream failure, which keeps it below a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with what is returned and followed by use cases. No filler, no restatement of the title, and every clause carries information an agent can act on.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return structure needn't be described, and the description already names the key forecast fields (SFI, Kp). For a zero-parameter, read-only forecast tool this is everything an agent needs to select and call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is no parameter semantics to explain; the baseline of 4 applies. The description correctly implies a no-argument call by framing the output purely as a fixed forecast window.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (NOAA 27-day solar flux and geomagnetic forecast) and immediately names the data returned (predicted SFI and Kp values). The explicit 27-day forecast horizon distinguishes it from current-condition siblings like solar_conditions, solar_wind, and solar_xray without needing to name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete use cases ('planning DX operations, contests, and POTA/SOTA activations'), which tells the agent when this tool is the right pick. It stops short of naming alternatives or stating when not to use it (e.g., versus solar_band_outlook or solar_conditions), so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solar_windSolar WindA
Read-onlyIdempotent

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.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds the data source (DSCOVR at L1, ~1.5M km sunward) and an interpretive note on Bz, but says nothing about update cadence, latency, staleness, or what happens if the feed is down—relevant for a 'real-time' tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the identity and scope, then the fields, then the one interpretive fact an agent actually needs ('southward Bz drives geomagnetic storms'). No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and the description covers source, fields, and meaning of Bz. The only gap is operational context—refresh rate/freshness of the 'real-time' feed—which matters for a zero-parameter live-data tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters, so the baseline is 4; the schema is complete by construction. The description correctly spends its words on the data payload instead of inventing parameter guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Get real-time DSCOVR L1 solar wind data') and enumerates the three quantities returned (Bz, speed, proton density), which helps distinguish it from solar_conditions and solar_forecast. However, it never explicitly contrasts itself with those siblings, so the agent must infer the boundary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: 'real-time' and 'L1' signal this is the current-conditions snapshot rather than a forecast, but there is no explicit when-to-use, when-not, or pointer to solar_conditions/solar_forecast. The agent must reason about sibling boundaries unaided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solar_xraySolar XrayA
Read-onlyIdempotent

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.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, open-world behavior, so the safety profile is covered. The description adds useful domain interpretation (the A/B/C/M/X scale and the operational consequence of M/X events) that annotations cannot convey, but it says nothing about data freshness, latency, or whether readings are near-real-time versus cached.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the core action and followed by the interpretive context. No filler, no repetition of the title or schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters, rich annotations, and an output schema documenting return values, the description only needs to establish purpose and interpret the classification. It does both; the sole gap is freshness/latency of the GOES reading, which matters for a 'current status' tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is no parameter semantics burden and the baseline is 4. The description correctly does not waste space restating an empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: retrieve GOES X-ray flux and current flare classification. The scope is unambiguous, though it does not explicitly contrast itself with siblings like solar_alerts or solar_conditions, which an agent must infer from the names.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the content ('current' status, classification scale). There is no explicit statement of when to pick this over solar_alerts or solar_forecast, nor any exclusions or prerequisites. The mention that M/X flares cause HF radio blackouts hints at when the data matters but does not route the agent between tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 7 tool updatesv0.2.1
    • First observedget_version_info
    • First observedsolar_alerts
    • First observedsolar_band_outlook
    • First observedsolar_conditions
    • First observedsolar_forecast
    • First observedsolar_wind
    • First observedsolar_xray

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation4/5

Each tool maps to a distinct NOAA data source (conditions, forecast, alerts, wind, X-ray, band outlook), so selection is mostly clear. However, solar_conditions advertises an 'HF band outlook derived from current indices' while solar_band_outlook provides the band-by-band view, creating a real overlap that could cause misselection.

Naming Consistency4/5

Six of seven tools follow a clean 'solar_<noun>' pattern (solar_conditions, solar_forecast, solar_wind, solar_xray, etc.) that reads predictably. get_version_info breaks the pattern with both a different prefix and a verb_noun form, but it's a single, clearly readable deviation.

Tool Count5/5

Seven tools is well-scoped for a space-weather/HF-propagation server; each one covers a distinct data feed or derived assessment. No tool feels padded or redundant at the surface level.

Completeness4/5

The surface covers the full practical workflow: current indices, forecast, alerts, raw solar wind, flare class, and band-level propagation advice, plus a version tool. Minor gaps exist (e.g. sunspot number or historical/trend data), but agents can work around them via SFI and the 27-day forecast.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time NOAA space weather data (solar flares, Kp index, solar wind) and analyzes HF radio propagation conditions for amateur radio operators to determine optimal frequency bands.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server for HamQTH.com — callsign lookup, DX cluster spots, Reverse Beacon Network, DXCC resolution, and more through any MCP-compatible AI assistant.
    8
    770 PyPI
    GPL 3.0
  • A
    license
    A
    quality
    A
    maintenance
    MCP server for QRZ.com — callsign lookups, DXCC entity resolution, and logbook queries through any MCP-compatible AI assistant.
    6
    870 PyPI
    4
    GPL 3.0