Darc Dok Mcp

io.github.qso-graphv0.1.0更新于 Oct 7, 2026

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

概览

AI 生成的概览

让助手查询 DARC 的 DOK 与特殊 DOK 代码、所属区、俱乐部及有效期,并在回答中注明来源。

功能
把 DARC 公布的 DOK-Liste 与特殊 DOK 列表作为本地事实提供。工具包括:darc_dok_lookup 查询单个代码的区、俱乐部、用途、呼号、有效期与主办俱乐部;darc_dok_valid_on 判断某代码在某个 QSO 日期是否有效;darc_dok_search 按俱乐部、城镇、区或用途查找代码;darc_dok_source_info 提供所有者、版本、条款及文件校验和;get_version_info 提供服务与所服务版本的身份信息。darc_dok_codes_for 为共享工具集保留,但 DOK 不映射到任何 ADIF 分区。
适用场景
适合涉及 DARC DOK 的业余无线电工作,例如 DLD 奖、DOK 最佳列表、WAG 竞赛或 ADIF 的 DARC_DOK 字段,需要在不离开助手的情况下查询代码并核对有效期时使用。
运行要求
以 stdio 本地进程运行,通常用 uvx darc-dok-mcp 启动,因此需要 Python/uv 运行环境。不需要网络、认证、环境变量或请求头;数据随包提供。
安装前请注意
仅做只读查询,不涉及凭据、付款或写入。数据属于 DARC 而非本包,本包的 GPL-3.0 许可不覆盖该数据;回答会注明来源并链接到 DARC 的文件,而不是复制它们。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Darc Dok Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

darc-dok-mcp

[PyPI] [MCP Registry]

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

bash
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):

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

Add to .claude/settings.json:

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

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

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

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

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

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

json
{  "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

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

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

Development

bash
git clone https://github.com/qso-graph/darc-dok-mcp.gitcd darc-dok-mcpuv sync --group devuv 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.

来源:README.md,提交 65feaf8

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v0.1.0最新Oct 7, 2026