← Back to search

io.github.qso-graph/lotw-mcp

qso-graph Scanned 28d ago

ARRL Logbook of The World MCP server. QSO query, QSL status, DXCC credit tracking.

C
73.8 / 100

Versions

0.2.0latest
first seen Jun 5, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 6

get_version_info
annotations: none low

Get lotw-mcp service version and upstream LoTW schema version. Returns the running PyPI version of lotw-mcp and the ARRL LoTW ADIF/CSV export schema 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. Returns: service_name, service_version (PyPI), and spec_version (LoTW schema).

lotw_confirmations
annotations: none low

Query confirmed QSL records from LoTW. Args: persona: Persona name configured in adif-mcp. since: QSLs received since this date (YYYY-MM-DD). Default: last 30 days. band: Filter by ADIF band (e.g., '20M'). mode: Filter by ADIF mode (e.g., 'FT8'). callsign: Filter by worked station callsign. dxcc: Filter by DXCC entity code. detail: Include QSL station location data (default true). Returns: Total count and list of confirmed QSO records.

band string dxcc string mode string since string detail bool persona str callsign string
lotw_qsos
annotations: none low

Query all uploaded QSOs from LoTW (confirmed and unconfirmed). Args: persona: Persona name configured in adif-mcp. since: QSOs uploaded since this date (YYYY-MM-DD). Default: last 30 days. band: Filter by band (e.g., '20M'). mode: Filter by mode (e.g., 'FT8'). start_date: QSO date range start (YYYY-MM-DD). end_date: QSO date range end (YYYY-MM-DD). Returns: Total count and list of QSO records.

band string mode string since string persona str end_date string start_date string
lotw_dxcc_credits
annotations: none low

Query DXCC award credits from LoTW confirmations. Args: persona: Persona name configured in adif-mcp. entity: Optional DXCC entity code to filter by. Returns: Total credits and list of credited QSOs with award details.

entity string persona str
lotw_download
annotations: none low

Download your complete LoTW log as raw ADIF text. Returns the .adi file content — save to disk for import into your logger. Set qsl_only=True for confirmed QSLs only. Omit 'since' for full history. Warning: large logs may take 30-60 seconds (LoTW is slow). Args: persona: Persona name configured in adif-mcp. qsl_only: Only return confirmed QSLs (default: all uploaded QSOs). since: Only records since this date (YYYY-MM-DD). Omit for full history. band: Filter by band (e.g., '20M'). mode: Filter by mode (e.g., 'FT8'). Returns: Raw ADIF text and record count.

band string mode string since string persona str qsl_only bool
lotw_user_activity
annotations: none low

Check if a callsign uses LoTW and when they last uploaded. Public endpoint — no authentication required. Uses a locally cached copy of the LoTW user activity CSV (refreshed weekly). Args: callsign: Callsign to check. Returns: Whether the callsign uses LoTW and their last upload date.

callsign str

Permissions 3

network medium
Server uses network capabilities via: urllib
filesystem low
Server uses filesystem capabilities via: os, pathlib
env_vars low
Server uses env_vars capabilities via: os.environ, os.getenv()

Scan Findings 29

low
Tool 'get_version_info' has no annotations annotation_checker · 100%
low
Tool 'lotw_confirmations' has no annotations annotation_checker · 100%
low
Tool 'lotw_qsos' has no annotations annotation_checker · 100%
low
Tool 'lotw_dxcc_credits' has no annotations annotation_checker · 100%
low
Tool 'lotw_download' has no annotations annotation_checker · 100%
low
Tool 'lotw_user_activity' has no annotations annotation_checker · 100%
high
Remote transport without authentication auth_checker · 70%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: fastmcp@3.0 (GHSA-m8x7-r2rg-vh5g) dependency_analyzer · 95%
medium
Vulnerable dependency: fastmcp@3.0 (GHSA-rww4-4w9c-7733) dependency_analyzer · 95%
medium
Vulnerable dependency: fastmcp@3.0 (GHSA-vv7q-7jx5-f767) dependency_analyzer · 95%
medium
Vulnerable dependency: fastmcp@3.0 (PYSEC-2026-2475) dependency_analyzer · 95%
medium
Vulnerable dependency: fastmcp@3.0 (PYSEC-2026-2476) dependency_analyzer · 95%
medium
Vulnerable dependency: fastmcp@3.0 (PYSEC-2026-338) dependency_analyzer · 95%
info
pyproject.toml metadata manifest_parser · 100%
info
Tool: get_version_info manifest_parser · 90%
info
Tool: lotw_confirmations manifest_parser · 90%
info
Tool: lotw_qsos manifest_parser · 90%
info
Tool: lotw_dxcc_credits manifest_parser · 90%
info
Tool: lotw_download manifest_parser · 90%
info
Tool: lotw_user_activity manifest_parser · 90%
info
Transport: streamable-http manifest_parser · 80%
info
Required env vars (1) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 80%
low
Permission: filesystem access detected permission_analyzer · 70%
low
Permission: env_vars access detected permission_analyzer · 90%
info
No dependency files found for SBOM generation sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%