Wsjtx MCP server
Operate WSJT-X (FT8/FT4/WSPR) from MCP clients over its UDP message protocol.
0 stars29 downloads/wk
Reviews
Write oneNobody has reviewed Wsjtx yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Wsjtx tools (14)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
annotateSet a Fox/Hound sort-order annotation for a DX call (no transmit).
clearClear a WSJT-X decode window (no transmit).
configureSet operating parameters via a ``Configure`` message (no transmit).
decodesThe RX data plane: buffered ``Decode`` / ``WSPRDecode`` lines.
diagnosticsHost + network + listener diagnostics for troubleshooting connectivity.
free_textSet the free-text (Tx5) message; with ``send=true`` **initiates TX** (gated).
highlightColour (or clear) a callsign in the Band Activity panel (no transmit).
locationOverride the session Maidenhead grid (4- or 6-character). No transmit.
logRead buffered completed QSOs (``QSOLogged`` paired with ``LoggedADIF``).
replyAnswer a buffered decode — **initiates a transmission** (gated by callsign).
statusLatest WSJT-X state snapshot plus listener/connection health.
switch_configSwitch WSJT-X to a named configuration (which must already exist). No transmit.
transmitStop transmitting. (WSJT-X's UDP protocol can halt but cannot *enable* Tx.)
wsjtx_callEscape hatch: build and send any WSJT-X message type by name.
Public scan report
scanner v0.1.10 · 2026-10-15 · same rubric, same numbers if you re-run it
- Code scan13 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 29 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Wsjtx compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 95% of 48,255 servers
- Tools
- 14
- the typical server has 7
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- Downloads a week
- 29
- more than 16% of 12,191 servers with a package
What its tools let an agent do: 13 read · 1 send or post
Install Wsjtx in Claude Code, Cursor or VS Code
claude mcp add wsjtx-mcp -- uvx wsjtx-mcp
What the publisher says
From the Wsjtx repository's README, as published. We do not edit it. Read it on GitHub
<!-- mcp-name: io.github.sbrunner-atx/wsjtx-mcp -->
wsjtx-mcp
An MCP server that controls WSJT-X (FT8/FT4/JT65/MSK144/Q65/WSPR…) from MCP clients such as Claude Desktop and the MCP Inspector.
It is the weak-signal leg of an "operate → log" trio for amateur radio:
digital modes via fldigi (XML-RPC).
- fldigi-mcp — operate broad
N3FJP (TCP API).
- n3fjp-mcp — log QSOs to
(UDP message protocol).
- wsjtx-mcp (this one) — operate the FT8/FT4 weak-signal world via WSJT-X
⚠️ Experimental (v0.1). Transmit is gated behind your callsign and you keep
the operator in command. Read the Transmit safety section.
How it is different
WSJT-X does not offer a request/response API. It broadcasts state over UDP (Status, Decode, QSOLogged, Heartbeat, …) and honours a small set of inbound control messages. So this server runs a background UDP listener that continuously parses datagrams and keeps the latest status, a buffer of decodes, and completed QSOs — you read those, and nudge WSJT-X with control messages.
Consequences worth knowing up front:
Status, and set mode/sub-mode/Rx DF/T-R period via configure, but QSY is a rig-control concern (Hamlib/CAT or the UI), not this server.
- No dial-frequency control over UDP. You can read the dial frequency from
started by answering a CQ (reply) or by freetext with send=true, and stopped* by transmit halt. There is no UDP command for the "Enable Tx", "Auto Seq", "Call 1st", or "Hold Tx Freq" checkboxes — those stay UI settings.
- You can start and halt Tx, but cannot toggle "Enable Tx". Transmission is
is equivalent to double-clicking a CQ; with Auto Seq enabled (the usual FT8/FT4 default) WSJT-X then sequences the whole exchange to QSOLogged with no further calls. With Auto Seq off, reply starts only the first transmission.
- reply gives hands-free QSOs only when WSJT-X's "Auto Seq" is on. A reply
(and only CQ/QRZ decodes), so S&P is fully automatable. It has no clean way to drive a repeating call-CQ (RUN) cycle — that needs WSJT-X's own "Enable Tx", or a free_text CQ re-sent each period.
- Best for search-and-pounce, weak for RUN. The API is built to answer CQs
Requirements
has been stable across those releases (verified live against WSJT-X 3.0.2).
- WSJT-X 2.1 through 3.x — the UDP message protocol is schema 3 / Qt54 and
2237**.
- In WSJT-X: Settings → Reporting → UDP Server
- UDP Server = the host running this server (default 127.0.0.1), **port
Observing decodes/status works without it; commanding does not.
- Accept UDP requests = ON to allow control (it is OFF by default).
Install (Claude Desktop)
Download the wsjtx-mcp.mcpb from the latest release and double-click it, or drag it onto Claude Desktop → Settings → Extensions. Fill in the settings form (callsign, host, port). See docs/INSTALL.md.
Configuration
Host/port are where this server listens; control replies are sent back to the address each datagram arrived from.
Tools
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Wsjtx: common questions
- Is Wsjtx MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Wsjtx safety report
- How do I install Wsjtx?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Wsjtx need an API key?
- No secret keys are declared. It reads 5 settings from the environment.
- Is Wsjtx maintained?
- The last commit was 49 days ago (2026-09-16). The latest release is v0.1.3.
- How does Wsjtx compare with other MCP servers?
- safety score 92/100 (higher than 95% of 48,255 servers); tools 14 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.