io.github.qso-graph/darc-dok-mcp

Official registry Other

DARC DOKs and special DOKs as DARC publishes them, with validity windows

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package darc-dok-mcp
Claude Code
claude mcp add darc-dok-mcp -- uvx darc-dok-mcp==0.3.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "darc-dok-mcp": {
            "command": "uvx",
            "args": [
                "darc-dok-mcp==0.3.0"
            ]
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. darc-dok-mcp
  2. Install
  3. Tools
  4. Quick Start
  5. MCP Inspector
  6. Development
  7. License

darc-dok-mcp

Source: the Deutscher Amateur-Radio-Club e.V. (DARC): the DOK-Liste (DARC DX-Referat, by Karsten Radwan, DL2ABM, 26.12.2016) and the special-DOK list (DARC SDOK-Referat). DOKs are DARC's: this package serves the lists' rows as facts, each citing its page or row, and links to DARC's files rather than copying them. Our GPL-3.0 licence covers our code, not DARC's data.

MCP server for DARC DOKs and special DOKs as DARC publishes them: the local-club codes of DARC's DOK-Liste (2016-12-26) and the event codes of DARC's special-DOK list, with each special DOK's validity window. DOKs are used for DARC's DLD award, the DOK best-lists and the WAG contest, and in ADIF's DARC_DOK field.

Part of the qso-graph project. No network, no authentication: the facts from the owner's list ship with the package, and every answer names its source.

Install

uvx darc-dok-mcp            # run it; nothing to install

Tools

ToolDescriptionKey Parameters
darc_dok_lookupOne DOK or special DOK: district and club, or purpose, callsign, window and sponsoring clubcode
darc_dok_valid_onWhether a DOK or special DOK was valid on a QSO's datecode, on_date
darc_dok_searchFind DOKs by club, town, district or purposetext, limit
darc_dok_codes_forKept for the shared tool set; DOKs map to no ADIF subdivisiondxcc, subdivision
darc_dok_source_infoOwner, editions, terms, and the owner's files' URLs and SHA-256s—
get_version_infoService version + the owner's edition served (fleet identity attestation)—

Quick Start

No credentials needed — just install and configure your MCP client.

Configure your MCP client

darc-dok-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):

{
  "mcpServers": {
    "darc-dok": {
      "command": "uvx",
      "args": ["darc-dok-mcp"]
    }
  }
}
Claude Code

Add to .claude/settings.json:

{
  "mcpServers": {
    "darc-dok": {
      "command": "uvx",
      "args": ["darc-dok-mcp"]
    }
  }
}
ChatGPT Desktop
{
  "mcpServers": {
    "darc-dok": {
      "command": "uvx",
      "args": ["darc-dok-mcp"]
    }
  }
}
Cursor

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

{
  "mcpServers": {
    "darc-dok": {
      "command": "uvx",
      "args": ["darc-dok-mcp"]
    }
  }
}
VS Code / GitHub Copilot

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

{
  "servers": {
    "darc-dok": {
      "command": "uvx",
      "args": ["darc-dok-mcp"]
    }
  }
}
Gemini CLI

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

{
  "mcpServers": {
    "darc-dok": {
      "command": "uvx",
      "args": ["darc-dok-mcp"]
    }
  }
}
Ask questions

"Which club is DOK A01?"

"Was special DOK 01ALT valid on 2004-06-01?"

"Which DOKs are in district Baden?"

MCP Inspector

darc-dok-mcp --transport streamable-http --port 8018

Then open the MCP Inspector at http://localhost:8018.

Development

git clone https://github.com/qso-graph/darc-dok-mcp.git
cd darc-dok-mcp
uv sync --group dev
uv run pytest

scripts/fetch_published.py fetches the owner's document(s) into published/ (not committed) and checks their SHA-256s; uv run pytest --live runs the tests that need them. scripts/build.py regenerates derived/ and load.sql, a PostgreSQL load for QSO Graph's reference data (load QG ADIF's adif schema first).

License

darc-dok-mcp's own code is GPL-3.0-or-later. See LICENSE. The data it serves is the owner's, credited at the top of this page: our licence doesn't cover it, and we claim no rights in it. The owner's document itself is not included; data/SOURCE.json records its URL and SHA-256 so anyone can check the facts against it. Files we built from the facts (data/derived/) are ours and labelled as ours. How the owner's text was read is recorded in docs/TRANSCRIPTION.md. See NOTICE.

Frequently asked questions

What is io.github.qso-graph/darc-dok-mcp?

DARC DOKs and special DOKs as DARC publishes them, with validity windows

How do I install io.github.qso-graph/darc-dok-mcp?

It runs on your machine. In Claude Code: claude mcp add darc-dok-mcp -- uvx darc-dok-mcp==0.3.0. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.qso-graph/darc-dok-mcp need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.qso-graph/darc-dok-mcp open source?

Yes. Its code is on GitHub under the GPL-3.0 license.

Who maintains io.github.qso-graph/darc-dok-mcp?

It is published by qso-graph. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.