Pulls data from the official Islands on the Air programme and exposes seven tools for ham radio operators and contesters. You get group lookup by reference (NA-005), island and group search by name, bidirectional DXCC entity mapping, geographic queries to find nearby groups by coordinates, and programme statistics showing credit totals by continent. Data is cached from IOTA's public JSON downloads and refreshes daily. No authentication needed since all IOTA data is public. Useful if you're planning DXpeditions, tracking activations, or building tools around the IOTA awards programme. Part of the qso-graph project.
MCP server for Islands on the Air (IOTA) — group lookup, island search, DXCC mapping, nearby groups, and programme statistics through any MCP-compatible AI assistant.
Part of the qso-graph project. No authentication required — all IOTA data is public.
pip install iota-mcp
| Tool | Description |
|---|---|
iota_lookup | Look up an IOTA group by reference number (e.g., NA-005) |
iota_search | Search groups and islands by name (e.g., Hawaii, Shetland) |
iota_islands | List all islands and subgroups in an IOTA group |
iota_dxcc | Bidirectional DXCC-to-IOTA mapping |
iota_stats | Programme summary — totals by continent, most/least credited |
iota_nearby | Find IOTA groups nearest to a lat/lon location |
get_version_info | Service version + upstream programme data version (fleet identity attestation) |
No credentials needed — just install and configure your MCP client.
iota-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": {
"iota": {
"command": "iota-mcp"
}
}
}
Add to .claude/settings.json:
{
"mcpServers": {
"iota": {
"command": "iota-mcp"
}
}
}
{
"mcpServers": {
"iota": {
"command": "iota-mcp"
}
}
}
Add to .cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"iota": {
"command": "iota-mcp"
}
}
}
Add to .vscode/mcp.json in your workspace:
{
"servers": {
"iota": {
"command": "iota-mcp"
}
}
}
Add to ~/.gemini/settings.json (global) or .gemini/settings.json (project):
{
"mcpServers": {
"iota": {
"command": "iota-mcp"
}
}
}
Data comes from the official IOTA website JSON downloads:
Data is downloaded once and cached for 24 hours (IOTA refreshes daily at 00:00 UTC).
git clone https://github.com/qso-graph/iota-mcp.git
cd iota-mcp
pip install -e .
# Run with mock data (no network)
IOTA_MCP_MOCK=1 python -m iota_mcp.server
# Run with MCP Inspector
iota-mcp --transport streamable-http --port 8010
# Security tests
pip install pytest
pytest tests/test_security.py -v
GPL-3.0-or-later
com.mcparmory/google-search
io.github.pipeworx-io/brave-search
marcopesani/mcp-server-serper
brave/brave-search-mcp-server
com.mcparmory/google-search-console
acamolese/google-search-console-mcp