ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Wsjtx MCP

โดย sbrunner-atxรุ่น 0.1.3i★ –iรันบนเครื่อง
ชื่อใน registryio.github.sbrunner-atx/wsjtx-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Operate WSJT-X (FT8/FT4/WSPR) from MCP clients over its UDP message protocol.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: อื่น ๆ

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "wsjtx": {
      "command": "uvx",
      "args": [
        "wsjtx-mcp"
      ],
      "env": {
        "WSJTX_CALLSIGN": "ใส่ค่าของคุณ",
        "WSJTX_HOST": "ใส่ค่าของคุณ",
        "WSJTX_PORT": "ใส่ค่าของคุณ",
        "WSJTX_MULTICAST": "ใส่ค่าของคุณ",
        "WSJTX_INSTANCE": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add wsjtx --env WSJTX_CALLSIGN='ใส่ค่าของคุณ' --env WSJTX_HOST='ใส่ค่าของคุณ' --env WSJTX_PORT='ใส่ค่าของคุณ' --env WSJTX_MULTICAST='ใส่ค่าของคุณ' --env WSJTX_INSTANCE='ใส่ค่าของคุณ' -- uvx wsjtx-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "wsjtx": {
      "command": "uvx",
      "args": [
        "wsjtx-mcp"
      ],
      "env": {
        "WSJTX_CALLSIGN": "ใส่ค่าของคุณ",
        "WSJTX_HOST": "ใส่ค่าของคุณ",
        "WSJTX_PORT": "ใส่ค่าของคุณ",
        "WSJTX_MULTICAST": "ใส่ค่าของคุณ",
        "WSJTX_INSTANCE": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "wsjtx": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "wsjtx-mcp"
      ],
      "env": {
        "WSJTX_CALLSIGN": "ใส่ค่าของคุณ",
        "WSJTX_HOST": "ใส่ค่าของคุณ",
        "WSJTX_PORT": "ใส่ค่าของคุณ",
        "WSJTX_MULTICAST": "ใส่ค่าของคุณ",
        "WSJTX_INSTANCE": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • WSJTX_CALLSIGN env
    Operator callsign — the single transmit gate. Blank = receive-only (refuses all transmit-initiating messages).
  • WSJTX_HOST env
    Address to bind/receive WSJT-X UDP broadcasts on. For a remote WSJT-X use 127.0.0.1 with the mcp-host-bridge 'wsjtx' service and set the port to 2238.
  • WSJTX_PORT env
    WSJT-X Settings → Reporting → UDP Server port. Default 2237. Enable 'Accept UDP requests' for control.
  • WSJTX_MULTICAST env
    Optional multicast group to join so multiple UDP consumers can coexist. Blank = unicast.
  • WSJTX_INSTANCE env
    Optional WSJT-X instance Id to target when several broadcast here.

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub sbrunner-atx ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 0% ของอีก 18428 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 36% ของอีก 18428 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 18428 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Wsjtx MCP ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.3) เข้า registry 2 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Winecellarbuilders

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Spec Driven Development

โดย formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

รันบนเครื่อง★ 440MITอัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

Remote Desktop Commander

โดย desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

รันบนคลาวด์★ 211อัปเดต 3 วันที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

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:

  • [fldigi-mcp](https://github.com/sbrunner-atx/fldigi-mcp) — operate broad digital modes via fldigi (XML-RPC).
  • [n3fjp-mcp](https://github.com/sbrunner-atx/n3fjp-mcp) — log QSOs to N3FJP (TCP API).
  • wsjtx-mcp *(this one)* — operate the FT8/FT4 weak-signal world via WSJT-X (UDP message protocol).

⚠️ 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:

  • No dial-frequency control over UDP. You can read the dial frequency from 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.
  • You can start and halt Tx, but cannot toggle "Enable Tx". Transmission is *started* by answering a CQ (reply) or by free_text 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.
  • `reply` gives hands-free QSOs only when WSJT-X's "Auto Seq" is on. A reply 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.
  • Best for search-and-pounce, weak for RUN. The API is built to *answer* CQs (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.

Requirements

  • WSJT-X 2.1 through 3.x — the UDP message protocol is schema 3 / Qt_5_4 and has been stable across those releases (verified live against WSJT-X 3.0.2).
  • In WSJT-X: Settings → Reporting → UDP Server
  • UDP Server = the host running this server (default 127.0.0.1), port `2237`.
  • Accept UDP requests = ON to allow *control* (it is OFF by default). Observing decodes/status works without it; commanding does not.

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

VariableDefaultPurpose
WSJTX_HOST127.0.0.1UDP address to bind/listen on.
WSJTX_PORT2237WSJT-X UDP Server port.
WSJTX_CALLSIGN_(empty)_Operator callsign — the single transmit gate. Blank = receive-only.
WSJTX_MULTICAST_(off)_Optional multicast group to join (coexist with other UDP consumers).
WSJTX_INSTANCE_(auto)_Target a specific WSJT-X Id when several instances broadcast.

Host/port are where this server listens; control replies are sent back to the address each datagram arrived from.

Tools

ToolKindWhat it does
statusobserveLatest Status snapshot + listener/instance health.
diagnosticsobserveHost/network + bind status + datagram counts + gate state.
decodesobserve/nudgeread / drain (poll new) / clear_local / replay. The RX plane.
logobserveBuffered completed QSOs (QSOLogged + LoggedADIF) → feed N3FJP.
replytransmitAnswer a buffered CQ/QRZ decode (auto-sequences the QSO when WSJT-X "Auto Seq" is on).
free_texttransmit if sendSet the Tx5 free-text message; send=true keys the radio.
transmitcontrolhalt / halt_auto — stop transmitting (UDP can't *enable* Tx).
configurecontrolMode/sub-mode/Rx DF/T-R period/freq-tol/DX call+grid. No dial freq.
clearcontrolClear the Band Activity / Rx Frequency windows.
highlightcontrolColour or clear a callsign in Band Activity.
locationcontrolOverride the session Maidenhead grid.
switch_configcontrolSwitch to a named WSJT-X configuration.
annotatecontrolSet a Fox/Hound sort-order annotation for a DX call (niche, DXpedition).
wsjtx_callescape hatchBuild & send any message type by name (gate still applies).

Transmit safety

The callsign is the single transmit gate, exactly as in fldigi-mcp. With WSJTX_CALLSIGN blank the server is receive-only: it refuses every transmit-initiating message — reply, free_text with send=true, and any keying message via wsjtx_call. transmit halt, clear, configure, highlight, location, replay, and all reads are always available (they don't put you on the air; halt takes you *off*).

Beyond that gate:

  • Per-transmit approval comes from the Claude Desktop tool-permission prompt — lean on it for human-in-the-loop control.
  • WSJT-X's own Tx Watchdog and the Tx Enabled / Transmitting flags (surfaced in status) are extra safety signals.
  • Operating under Part 97 automatic/remote control is the operator's responsibility: ensure station identification and a control operator who can intervene.

Running alongside other UDP tools

Only one process can normally own UDP 2237 on a host. If JTAlert, GridTracker, or N1MM already consume it, either point WSJT-X's *secondary* UDP server here, use a multicast group (WSJTX_MULTICAST) so several listeners coexist, or run this server on a different host. To reach a WSJT-X on another machine, install the mcp-host-bridge tool (mcp-host-bridge install wsjtx --to ) and set WSJTX_PORT=2238 — sandboxed MCP clients reach only loopback, and the bridge does the LAN hop. See docs/REMOTE-HOST.md.

Development

uv sync

uv run ruff check . uv run pytest

The protocol codec is pure standard library and unit-tested against byte fixtures, so the tests need no running WSJT-X. A smoke_test.py proves a live WSJT-X is reachable receive-only. The field-tested message reference lives in docs/WSJTX-API.md.

License

MIT © 2026 Stefan Brunner (AE5VG)

ถาม PopNx