Skip to main content
ClaudeWave

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

MCP ServersOfficial Registry1 stars0 forks● PythonNOASSERTIONUpdated today
ClaudeWave Trust Score
80/100
✓ Trusted
Passed
  • ✓Actively maintained (<30d)
  • ✓Clear description
  • ✓Topics declared
  • ✓Documented (README)
Flags
  • !Licence file present but not machine-readable
Last scanned: 9/29/2026
Install in Claude Code / Claude Desktop
Method: UVX (Python) · lotw-mcp
Claude Code CLI
claude mcp add lotw-mcp -- uvx lotw-mcp
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "lotw-mcp": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
Use cases

MCP Servers overview

<!-- mcp-name: io.github.qso-graph/lotw-mcp -->
# lotw-mcp

[![PyPI](https://img.shields.io/pypi/v/lotw-mcp?label=PyPI&color=blue)](https://pypi.org/project/lotw-mcp/)
[![MCP Registry](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fregistry.modelcontextprotocol.io%2Fv0%2Fservers%3Fsearch%3Dio.github.qso-graph%2Flotw-mcp%26version%3Dlatest&query=%24.servers%5B0%5D.server.version&label=MCP%20Registry&color=blue)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.qso-graph/lotw-mcp&version=latest)

MCP server for [ARRL Logbook of The World](https://lotw.arrl.org/) (LoTW) — query confirmations, uploaded QSOs, DXCC credits, and user activity through any MCP-compatible AI assistant.

Part of the [qso-graph](https://qso-graph.io/) project. Read-only — uploads require TQSL digital signatures and are out of scope.

## Install

```bash
uvx lotw-mcp            # run it; nothing to install
pip install lotw-mcp    # or install it into your own environment
```

## Tools

| Tool | Auth | Description |
|------|------|-------------|
| `lotw_confirmations` | Yes | Query confirmed QSLs with band/mode/call/date filters |
| `lotw_qsos` | Yes | Query all uploaded QSOs (confirmed and unconfirmed) |
| `lotw_dxcc_credits` | Yes | DXCC award credits from LoTW confirmations |
| `lotw_download` | Yes | Download QSOs as ADIF file |
| `lotw_user_activity` | No | Check if a callsign uses LoTW and when they last uploaded |
| `get_version_info` | No | Service version + upstream LoTW schema version (fleet identity attestation) |

## Quick Start

### 1. Set up credentials

lotw-mcp uses qso-graph-auth personas for credential management:

```bash
uv tool install qso-graph-auth

qso-auth persona create ki7mt --callsign KI7MT
qso-auth persona provider ki7mt lotw --username KI7MT
qso-auth persona secret ki7mt lotw
```

**Note**: The LoTW `login` is usually your callsign but not always. Pre-Sept 2019 accounts may require lowercase passwords. Avoid special characters in passwords.

### 2. Configure your MCP client

#### Claude Desktop

Add to `claude_desktop_config.json` (`~/Library/Application Support/Claude/` on macOS, `%APPDATA%\Claude\` on Windows):

```json
{
  "mcpServers": {
    "lotw": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
```

#### Claude Code

Add to `.claude/settings.json`:

```json
{
  "mcpServers": {
    "lotw": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
```

#### ChatGPT Desktop

```json
{
  "mcpServers": {
    "lotw": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
```

#### Cursor

Add to `.cursor/mcp.json` (project-level) or `~/.cursor/mcp.json` (global):

```json
{
  "mcpServers": {
    "lotw": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
```

#### VS Code / GitHub Copilot

Add to `.vscode/mcp.json` in your workspace:

```json
{
  "servers": {
    "lotw": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
```

#### Gemini CLI

Add to `~/.gemini/settings.json` (global) or `.gemini/settings.json` (project):

```json
{
  "mcpServers": {
    "lotw": {
      "command": "uvx",
      "args": ["lotw-mcp"]
    }
  }
}
```

Installed with pip instead? Use `"command": "lotw-mcp"` in any config above.

### 3. Ask questions

> "How many LoTW confirmations did I get this month?"

> "Show me all unconfirmed 20m FT8 QSOs uploaded to LoTW in the last 90 days"

> "What DXCC credits do I have on 40m CW?"

> "Does JA1ABC use LoTW? When did they last upload?"

## Public Tool

`lotw_user_activity` works without any credentials. It uses the public LoTW user activity CSV, cached locally for 7 days.

## Testing Without Credentials

Set the mock environment variable:

```bash
LOTW_MCP_MOCK=1 lotw-mcp
```

## Performance Notes

LoTW can be slow (30-60s for large queries). lotw-mcp uses 120s timeouts. Use date filters (`since`, `start_date`) to limit result sets.

## MCP Inspector

```bash
lotw-mcp --transport streamable-http --port 8004
```

## Development

```bash
git clone https://github.com/qso-graph/lotw-mcp.git
cd lotw-mcp
uv sync --group dev
uv run pytest
```

## License

GPL-3.0-or-later
amateur-radioarrldxccfastmcpham-radiolotwmcpmodel-context-protocolpythonqso-graph

What people ask about lotw-mcp

What is qso-graph/lotw-mcp?

+

qso-graph/lotw-mcp is mcp servers for the Claude AI ecosystem. MCP server for ARRL Logbook of The World — QSO query, QSL status, DXCC credit It has 1 GitHub stars and its last recorded update is dated 2026-09-28.

How do I install lotw-mcp?

+

You can install lotw-mcp by cloning the repository (https://github.com/qso-graph/lotw-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is qso-graph/lotw-mcp safe to use?

+

Our security agent has analyzed qso-graph/lotw-mcp and assigned a Trust Score of 80/100 (tier: Trusted). See the full breakdown of passed checks and flags on this page.

Who maintains qso-graph/lotw-mcp?

+

qso-graph/lotw-mcp is maintained by qso-graph. The last recorded GitHub activity is dated 2026-09-28, with 0 open issues.

Are there alternatives to lotw-mcp?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy lotw-mcp to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: qso-graph/lotw-mcp
[![Featured on ClaudeWave](https://claudewave.com/api/badge/qso-graph-lotw-mcp)](https://claudewave.com/repo/qso-graph-lotw-mcp)
<a href="https://claudewave.com/repo/qso-graph-lotw-mcp"><img src="https://claudewave.com/api/badge/qso-graph-lotw-mcp" alt="Featured on ClaudeWave: qso-graph/lotw-mcp" width="320" height="64" /></a>

More MCP Servers

lotw-mcp alternatives