Parks on the Air MCP server. Park lookup, activator and hunter stats, live spots.
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
uvx pota-mcp
MCP client config
{
"mcpServers": {
"pota": {
"command": "uvx",
"args": [
"pota-mcp"
]
}
}
}MCP server for Parks on the Air (POTA) — live activator spots, park info, activator/hunter stats, and scheduled activations through any MCP-compatible AI assistant.
Part of the qso-graph project. No authentication required — all POTA endpoints are public.
uvx pota-mcp # run it; nothing to install
| Tool | Description |
|---|---|
pota_spots | Current activator spots with park/grid enrichment and optional filters |
pota_park_info | Park details by reference code (name, grid, type, agencies, website) |
pota_park_stats | Activation and QSO counts for a park |
pota_park_activations | A park's recent activations — who, when, and QSOs by mode |
pota_park_leaderboard | A park's top activators, activator QSOs and hunter QSOs |
pota_user_stats | Activator/hunter stats by callsign (callsign, name, activator, attempts, hunter, awards, endorsements; no address or email-derived fields) |
pota_scheduled | Upcoming scheduled activations, with optional location, park, activator and time-window filters |
pota_location_parks | All parks in a state/province/country |
pota_nearby_parks | Find parks near a point — great for 2-fer planning |
pota_rare_parks_near | Parks near a point that are rarely or never activated |
get_version_info | Service version + upstream spec version (fleet identity attestation) |
No credentials needed — just install and configure your MCP client.
pota-mcp works with any MCP-compatible client. Add the server config and restart — tools appear automatically.
Add to claude_desktop_config.json (~/Library/Application Support/Claude/ on macOS, %APPDATA%\Claude\ on Windows):
{
"mcpServers": {
"pota": {
"command": "uvx",
"args": ["pota-mcp"]
}
}
}
Add to .claude/settings.json:
{
"mcpServers": {
"pota": {
"command": "uvx",
"args": ["pota-mcp"]
}
}
}
{
"mcpServers": {
"pota": {
"command": "uvx",
"args": ["pota-mcp"]
}
}
}
Add to .cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"pota": {
"command": "uvx",
"args": ["pota-mcp"]
}
}
}
Add to .vscode/mcp.json in your workspace:
{
"servers": {
"pota": {
"command": "uvx",
"args": ["pota-mcp"]
}
}
}
Add to ~/.gemini/settings.json (global) or .gemini/settings.json (project):
{
"mcpServers": {
"pota": {
"command": "uvx",
"args": ["pota-mcp"]
}
}
}
"What POTA activations are happening right now?"
"Tell me about park US-0001 — how many activations has it had?"
"What are K4SWL's POTA stats?"
"Show me all parks in Idaho"
"Are there any CW activators on 20m right now?"
"What activations are scheduled for tomorrow?"
For testing all tools without hitting the POTA API:
POTA_MCP_MOCK=1 pota-mcp
pota-mcp --transport streamable-http --port 8006
Then open the MCP Inspector at http://localhost:8006.
git clone https://github.com/qso-graph/pota-mcp.git
cd pota-mcp
uv sync --group dev
uv run pytest
GPL-3.0-or-later