Skip to main content

ADIF MCP core engine with plugin support (LoTW, eQSL, QRZ, Club Log)

Project description

adif-mcp

Core Model Context Protocol (MCP) service for Amateur Radio Logging, per ADIF 3.1.5 specification

Pretty Code • Pretty Output • Iterative Docs A simple mantra: keep the code clean, the output clear, and the docs evolving.


Resources

Made with Python License: MIT

Core Project Health

ADIF GitHub release GitHub tag CI Docs pre-commit Conventional Commits SSL Certificate Expiry Check

MCP / API Readiness

MCP API Docs JSON Schema Manifest Validate

Compliance and Program Registry

ADIF 3.1.5 Program ID


Overview

This package defines the ADIF MCP core engine, with plugins for:

  • LoTW (adif-mcp-lotw)
  • eQSL (adif-mcp-eqsl)

Performs these tasks

  • Validation & normalization of ADIF records
  • Unified schema for consistent QSO storage and exchange
  • MCP-ready tools for safe AI-agent access
  • Foundation for service adapters (e.g., LoTW, eQSL)

🔑 Takeaway: MCP doesn’t replace LoTW, eQSL, or award programs. Instead, it gives operators visibility and accessibility into their award progress, across sponsors, without them needing to export, filter, or code.


Why ADIF-MCP Matters

Unlike existing ADIF editors and one-off utilities, ADIF-MCP is a shared protocol engine for the Amateur Radio community:

  • Spec-compliant & typed — ADIF fields are validated against the official standard.
  • Extensible — integrations (LoTW, eQSL, QRZ, logging apps) plug into a common base.
  • AI-ready — exposes safe, typed tools to AI agents via the Model Context Protocol.
  • Foundation, not silo — one engine many apps can trust, instead of everyone re-implementing ADIF parsing.

👉 ADIF-MCP turns ADIF from a static file format into a living protocol interface.


Next Steps

  • Build adif-mcp-lotw and adif-mcp-eqsl adapters
  • Expose MCP tools for validation, award tracking, and service sync
  • Support cross-logger interoperability with AI-driven agents

Compliance & Provenance

ADIF-MCP and its plugins follow the ADIF Specification (currently 3.1.5) and use registered Program IDs to identify all exports:

  • ADIF-MCP — Core engine
  • ADIF-MCP-LOTW — Plugin for ARRL Logbook of The World
  • ADIF-MCP-EQSL — Plugin for eQSL.cc

To ensure transparency and auditability, the project also uses APP_ fields for provenance when augmenting records. Examples include:

  • APP_ADIF-MCP_OP → operation performed (normalize, validate, merge)
  • APP_ADIF-MCP-LOTW_ACTION → LoTW plugin operation
  • APP_ADIF-MCP-EQSL_TIME → timestamp of eQSL merge

See the Program ID & APP_ Field Policy for full details.

License

MIT — open and free for amateur radio use.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

adif_mcp-0.3.0.tar.gz (28.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

adif_mcp-0.3.0-py3-none-any.whl (37.9 kB view details)

Uploaded Python 3

File details

Details for the file adif_mcp-0.3.0.tar.gz.

File metadata

  • Download URL: adif_mcp-0.3.0.tar.gz
  • Upload date:
  • Size: 28.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for adif_mcp-0.3.0.tar.gz
Algorithm Hash digest
SHA256 6755294ac9a6e6261a36b6f6b311299e6b8c6b7427e6bb087d4e6690af80c736
MD5 d24b5a2778eeb8735db086245fc6e68a
BLAKE2b-256 f3cf62e8badb07a40a4cd8aa8e29b7f4730be45098afeeeed0b0671bdfad2ee4

See more details on using hashes here.

Provenance

The following attestation bundles were made for adif_mcp-0.3.0.tar.gz:

Publisher: release.yml on KI7MT/adif-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file adif_mcp-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: adif_mcp-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 37.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for adif_mcp-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c2594a3747fbec7a6d6261cb0bd6b43239e5b2900dd0774b25b6a688fe81b225
MD5 c8b9d2678e4b3c5feeb1d62b4e4f6ad7
BLAKE2b-256 cc5ee749dd9eb2be3fbfdc71a1e89a09c9862b8e70cb764964fdf27fb09eeb65

See more details on using hashes here.

Provenance

The following attestation bundles were made for adif_mcp-0.3.0-py3-none-any.whl:

Publisher: release.yml on KI7MT/adif-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page