Skip to content
@qso-graph

QSO-Graph

Open-source MCP servers for amateur radio — eQSL, QRZ, Club Log, LoTW, and more

QSO-Graph — MCP Servers for Amateur Radio

Live DemoDXpedition DemoDocs

Open-source Model Context Protocol servers that connect AI assistants to amateur radio services. Ask Claude, ChatGPT, Copilot, or Gemini about your QSOs, confirmations, and logbook data — no manual API wrangling required.

14 packages · 91 tools · one install command.

View the live demo → · Documentation →

Install

curl -sL https://qso-graph.io/install.sh | bash

Creates ~/.qso-graph/ with an isolated Python environment, installs the base MCP servers (6 servers, 38 tools), and adds them to your PATH. Works on Linux and macOS. No root required.

After install, run qso-graph-config to manage servers, credentials, datasets, and MCP client configuration via an interactive TUI.

Advanced users can install directly via pip:

pip install qso-graph-config # Base — 6 servers, 45 tools
pip install "qso-graph-config[auth]"# + 4 logbook servers (26 tools)
pip install "qso-graph-config[ionis]"# + ionis-mcp propagation (12 tools)
pip install "qso-graph-config[full]"# Everything — 13 packages, 91 tools

Security — Our #1 Priority

Your credentials never leave the OS keyring. Every qso-graph server enforces non-negotiable security guarantees:

  • Credentials stored in OS keyring only (macOS Keychain, Windows Credential Manager, Linux Secret Service) — never in config files, environment variables, or logs
  • Credentials never appear in MCP tool results, error messages, or debug output — enforced by architecture, not policy
  • No command injection surface — no subprocess, no shell=True, no eval
  • All external connections HTTPS only
  • Rate limiting on every API to prevent account bans
  • Independent security audit required before every PyPI release

Full details: Security

Packages

Installer

PackagePurposeStatus
qso-graph-configInstaller and manager — TUI, upgrades, config generation, dataset downloadsPyPI v0.1.0

Foundation

PackagePurposeStatus
adif-mcpADIF 3.1.7 spec parsing, validation, enumerations (8 tools)PyPI v1.1.0
qso-graph-authPersona management, OS keyring credentials, qso-auth CLIPyPI v0.1.1

Logbook Services (Authenticated)

PackageServiceToolsStatus
eqsl-mcpeQSL.cc6 tools: inbox, verify, AG status, download, last upload, version infoPyPI v0.3.3
lotw-mcpLoTW6 tools: confirmations, QSOs, DXCC credits, download, user activity, version infoPyPI v0.3.3
qrz-mcpQRZ.com6 tools: lookup, DXCC, logbook status, download, logbook fetch, version infoPyPI v0.3.3
hamqth-mcpHamQTH8 tools: lookup, DXCC, bio, activity, DX spots, RBN, verify QSO, version infoPyPI v0.4.1

Public Services (No Auth Required)

PackageServiceToolsStatus
pota-mcpPOTA8 tools: spots, park info, stats, schedules, location, nearby, activator, version infoPyPI v0.2.2
sota-mcpSOTA5 tools: spots, alerts, summit info, nearby summits, version infoPyPI v0.1.6
iota-mcpIOTA7 tools: group lookup, island search, DXCC mapping, nearby, stats, version infoPyPI v0.1.2
solar-mcpNOAA SWPC7 tools: SFI, Kp, solar wind, X-ray flux, band outlook, alerts, version infoPyPI v0.2.1
wspr-mcpWSPR9 tools: spots, band activity, top beacons/spotters, propagation, grid, SNR, version infoPyPI v0.3.2

Radio Logging

PackageServiceToolsStatus
n1mm-mcpN1MM Logger+9 tools: station state, lookup, contacts, bandmap, performance, multipliers, clock, diagnostics, version infoPyPI v0.1.5

Infrastructure

PackagePurposeStatus
qsp-mcpQSP — relay MCP tools to any local LLM (llama.cpp, Ollama, vLLM, SGLang)PyPI v0.2.0

Quick Start

# One-line install (Linux / macOS)
curl -sL https://qso-graph.io/install.sh | bash
# Launch the config manager
qso-graph-config
# Or install a single server directly
pip install solar-mcp

Each server works with any MCP client: Claude Desktop, Claude Code, ChatGPT, Cursor, VS Code / GitHub Copilot, Windsurf, Gemini CLI, Goose, and Codex CLI — or use qsp-mcp to relay tools to any local LLM.

Architecture

install.sh (bootstrap) qso-graph-config (manager)
└── ~/.qso-graph/ ├── Install / upgrade servers
├── venv/ ├── Credential setup (qso-auth)
├── bin/ (PATH) ├── Dataset downloads (ionis-mcp)
└── etc/state.json └── MCP client config generation
qso-graph-auth (identity) MCP Servers (qso-graph)
├── PersonaManager ──> eqsl-mcp, qrz-mcp, lotw-mcp, hamqth-mcp
├── OS keyring credentials Each server = 1 pip install
└── qso-auth CLI Each server = 4-8 MCP tools
adif-mcp (ADIF spec) Public Servers
└── 8 spec tools ──> solar, pota, sota, iota, wspr (no auth)
qsp-mcp (tool relay) Local LLM Inference
└── Stateless pipe ──> llama.cpp, Ollama, vLLM, SGLang
MCP tools → OpenAI Any model with function calling
tools format Zero cloud dependency

Demos

DemoDescriptionStatus
qso-graph-demoQSO logbook analysis showcase (Next.js / Vercel)Live Demo
dxpedition-demoDXpedition propagation analysis — 3Y0K Bouvet Island (Next.js / Vercel)Live Demo

Related Projects

ProjectDescription
ionis-mcpHF propagation analytics from 175M+ signatures (14B observations) — 12 tools, PyPI v1.2.9
ionis-jupyterJupyter notebooks for propagation research

Reporting Security Issues

Do NOT open public GitHub issues for security vulnerabilities. Email: ki7mt@yahoo.com with subject [SECURITY] qso-graph vulnerability report.

License

GPL-3.0-or-later

Popular repositories Loading

  1. adif-mcp adif-mcpPublic

    ADIF MCP server — AI-agent access to Amateur Radio logging per ADIF 3.1.7

    Python 3

  2. solar-mcp solar-mcpPublic

    MCP server for solar indices and space weather — SFI, SSN, Kp, DSCOVR, alerts

    Python 2

  3. qrz-mcp qrz-mcpPublic

    MCP server for QRZ.com — callsign lookup, DXCC resolution, logbook queries

    Python 1

  4. lotw-mcp lotw-mcpPublic

    MCP server for ARRL Logbook of The World — QSO query, QSL status, DXCC credit

    Python 1

  5. pota-mcp pota-mcpPublic

    MCP server for Parks on the Air — park lookup, activator/hunter stats, spots

    Python 1

  6. qso-graph.github.io qso-graph.github.ioPublic

    Documentation site for qso-graph MCP servers — qso-graph.io

    HTML 1

Repositories

Showing 10 of 24 repositories

Top languages

Loading…

Most used topics

Loading…