MCP server for eQSL.cc — inbox, verification, AG status
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
- !Licence file present but not machine-readable
claude mcp add eqsl-mcp -- uvx eqsl-mcp{
"mcpServers": {
"eqsl-mcp": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}MCP Servers overview
<!-- mcp-name: io.github.qso-graph/eqsl-mcp -->
# eqsl-mcp
[](https://pypi.org/project/eqsl-mcp/)
[](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.qso-graph/eqsl-mcp&version=latest)
MCP server for [eQSL.cc](https://www.eqsl.cc/) — download incoming eQSLs, verify QSOs, check AG status, and query upload history through any MCP-compatible AI assistant.
Part of the [qso-graph](https://qso-graph.io/) project. Uses [qso-graph-auth](https://pypi.org/project/qso-graph-auth/) for credential management.
## Install
```bash
uvx eqsl-mcp # run it; nothing to install
pip install eqsl-mcp # or install it into your own environment
```
## Tools
| Tool | Auth | Description |
|------|------|-------------|
| `eqsl_inbox` | Yes | Download incoming eQSLs with date/confirmation filters |
| `eqsl_verify` | No | Check if a specific QSO exists in eQSL |
| `eqsl_ag_check` | No | Check if a callsign has AG (Authenticity Guaranteed) status |
| `eqsl_download` | Yes | Download eQSL card images |
| `eqsl_last_upload` | No | When did a persona last upload to eQSL |
| `get_version_info` | No | Service version + upstream eQSL.cc endpoint version (fleet identity attestation) |
## Quick Start
### 1. Set up credentials
eqsl-mcp uses qso-graph-auth personas for credential management:
```bash
# Install qso-graph-auth if you haven't
uv tool install qso-graph-auth
# Create a persona and add eQSL credentials
qso-auth persona create ki7mt --callsign KI7MT
qso-auth persona provider ki7mt eqsl --username KI7MT
qso-auth persona secret ki7mt eqsl
```
### 2. Configure your MCP client
eqsl-mcp works with any MCP-compatible client. Add the server config and restart — tools appear automatically.
#### Claude Desktop
Add to `claude_desktop_config.json` (`~/Library/Application Support/Claude/` on macOS, `%APPDATA%\Claude\` on Windows):
```json
{
"mcpServers": {
"eqsl": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}
```
#### Claude Code
Add to `.claude/settings.json`:
```json
{
"mcpServers": {
"eqsl": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}
```
#### ChatGPT Desktop
ChatGPT supports MCP via the [OpenAI Agents SDK](https://developers.openai.com/api/docs/mcp/). Add under Settings > Apps & Connectors, or configure in your agent definition:
```json
{
"mcpServers": {
"eqsl": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}
```
#### Cursor
Add to `.cursor/mcp.json` (project-level) or `~/.cursor/mcp.json` (global):
```json
{
"mcpServers": {
"eqsl": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}
```
#### VS Code / GitHub Copilot
Add to `.vscode/mcp.json` in your workspace:
```json
{
"servers": {
"eqsl": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}
```
#### Gemini CLI
Add to `~/.gemini/settings.json` (global) or `.gemini/settings.json` (project):
```json
{
"mcpServers": {
"eqsl": {
"command": "uvx",
"args": ["eqsl-mcp"]
}
}
}
```
Installed with pip instead? Use `"command": "eqsl-mcp"` in any config above.
### 3. Ask questions
> "Show me all eQSLs received this week"
> "How many unconfirmed eQSLs do I have on 20m FT8?"
> "Does W1AW have AG status on eQSL?"
> "Verify my QSO with KI7MT on 20m on March 1, 2026"
## Testing Without Credentials
The two public tools (`eqsl_verify` and `eqsl_ag_check`) work without any credentials.
For `eqsl_inbox` testing, set the mock environment variable:
```bash
EQSL_MCP_MOCK=1 eqsl-mcp
```
Or point to a local ADIF file:
```bash
EQSL_MCP_MOCK=1 EQSL_MCP_ADIF=/path/to/test.adi eqsl-mcp
```
## MCP Inspector
```bash
eqsl-mcp --transport streamable-http --port 8001
```
Then open the MCP Inspector at `http://localhost:8001`.
## Development
```bash
git clone https://github.com/qso-graph/eqsl-mcp.git
cd eqsl-mcp
uv sync --group dev
uv run pytest
```
## Date Formats
eQSL uses different date formats across endpoints. eqsl-mcp normalizes everything — you always use `YYYY-MM-DD`:
| You provide | eqsl-mcp sends | Endpoint |
|-------------|----------------|----------|
| `2026-03-01` | `202603010000` | DownloadInBox (RcvdSince) |
| `2026-03-01` | `03/01/2026` | VerifyQSO (QSODate) |
## Mode Matching
eQSL requires exact mode matching. `SSB` won't match `USB`/`LSB`. `PSK` won't match `PSK31`. Use the exact mode logged by the other station.
## License
GPL-3.0-or-later
What people ask about eqsl-mcp
What is qso-graph/eqsl-mcp?
+
qso-graph/eqsl-mcp is mcp servers for the Claude AI ecosystem. MCP server for eQSL.cc — inbox, verification, AG status It has 0 GitHub stars and its last recorded update is dated 2026-09-28.
How do I install eqsl-mcp?
+
You can install eqsl-mcp by cloning the repository (https://github.com/qso-graph/eqsl-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is qso-graph/eqsl-mcp safe to use?
+
Our security agent has analyzed qso-graph/eqsl-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/eqsl-mcp?
+
qso-graph/eqsl-mcp is maintained by qso-graph. The last recorded GitHub activity is dated 2026-09-28, with 0 open issues.
Are there alternatives to eqsl-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy eqsl-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.
[](https://claudewave.com/repo/qso-graph-eqsl-mcp)<a href="https://claudewave.com/repo/qso-graph-eqsl-mcp"><img src="https://claudewave.com/api/badge/qso-graph-eqsl-mcp" alt="Featured on ClaudeWave: qso-graph/eqsl-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
The fastest path to AI-powered full stack observability, even for lean teams.