Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
JS8Call MCP server for HF messaging: decode stream, heard stations, message traffic
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"js8call": {
"command": "uvx",
"args": [
"js8call-mcp"
]
}
}
}ターミナルでこれを実行します
claude mcp add js8call -- uvx js8call-mcpプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"js8call": {
"command": "uvx",
"args": [
"js8call-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"js8call": {
"type": "stdio",
"command": "uvx",
"args": [
"js8call-mcp"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント qso-graph で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.0)がレジストリに届いたのは11 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Georgia MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
An MCP server for Georgian public data, read from the organizations that publish it.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Ask an AI app what WSJT-X is hearing. WSJT-X sends what it is doing and every decode to a UDP Server address; jt-mcp listens there and answers: who is calling CQ, and what kind of CQ (DX, POTA, a contest, a region), who has been heard and how well, what WSJT-X is tuned to, recent decodes and WSPR spots.
Read-only, permanently. jt-mcp never sends WSJT-X a message, so it cannot answer a call, key your transmitter or change a setting. No write, no PTT, no transmit control — a permanent constraint, not a first-version limit. The tests assert it against the source.
WSJT-X first, and WSJT-X defines the protocol. The UDP message definitions come from the WSJT-X project — Network/NetworkMessage.hpp, at the schema WSJT-X states — because the project that owns a definition is its authority. The code is qso-graph-lib's, the same that qso-graph-sim plays WSJT-X's messages with. JTDX, WSJT-Z and MSHV are supported where they work with those definitions, and where one does not, its difference is not implemented here. JS8Call, whose API is its own, follows WSJT-X.
This server was js8call-mcp until 2026-10-29. Part of the qso-graph project.
uvx jt-mcp # run it; nothing to install
In WSJT-X: File, Settings, Reporting, UDP Server: 127.0.0.1, port 2237 (WSJT-X's defaults). That is all jt-mcp needs when WSJT-X runs on the same PC.
Only one program can listen on a UDP port. If GridTracker, JTAlert or another logger already listens on 2237, give jt-mcp a different port (--udp-port) and point WSJT-X at that one.
| Tool | Answers |
|---|---|
jt_cq | Who is calling CQ, and what kind: plain, DX, activity (POTA, SOTA, WWFF, IOTA), contest (TEST, FD, RU, WW), region (NA, EU, ...), or a frequency (CQ 290). The latest per station |
jt_status | What each WSJT-X is doing: dial frequency and band, mode, DX call and grid, Tx enabled or transmitting, your call and grid |
jt_decodes | Recent decodes, each read into its parts (who is calling whom, grid, report, sign-off); filter by callsign, CQ only, SNR, band |
jt_heard | Stations heard: how often, last SNR, last grid, mode and band |
jt_wspr | WSPR spots WSJT-X decoded: call, grid, power, SNR, drift |
jt_diagnostics | The listener: where it listens, who may send, what arrived, what was dropped and from where, each WSJT-X's version |
get_version_info | Service version and status |
Times are UTC. Several WSJT-X instances (two radios, two bands) are kept apart by the Id each sends, such as WSJT-X - FT-991A.
"Who's calling CQ POTA on 20 m right now?"
"Any DX calling CQ in the last ten minutes, strongest first?"
"Has W9XYZ been heard, and how strong?"
"What is WSJT-X tuned to, and is Tx enabled?"
"Why isn't anything showing up?" —
jt_diagnostics
jt-mcp works with any MCP-compatible client. Add the server and restart the client.
Add to claude_desktop_config.json (~/Library/Application Support/Claude/ on macOS, %APPDATA%\Claude\ on Windows):
{
"mcpServers": { "jt": { "command": "uvx", "args": ["jt-mcp"] } } }
claude mcp add jt -- uvx jt-mcp
Configure via Settings > Apps & Connectors, or in your agent definition, with the same command and args as above.
By default jt-mcp listens on 127.0.0.1, this PC alone. For WSJT-X on another PC, give one address of this PC with --bind, and name each PC that may send with --allow:
"args": ["jt-mcp", "--bind", "192.168.1.50", "--allow", "192.168.1.40"]
and set WSJT-X's UDP Server to 192.168.1.50. Listening on every interface at once (0.0.0.0) is refused, --allow is required with a network address, and names are not accepted, only IP addresses. A datagram from anyone else is dropped unread and counted, and jt_diagnostics shows the count and the addresses.
What the allow list does not do. It keeps other machines out. It is not proof of who sent: a UDP sender's address can be forged by anything on the same network. What contains that is that jt-mcp only reads, so a forged datagram can mislead about what WSJT-X is doing and cannot make anything happen.
jt-mcp [--bind ADDR] [--allow ADDR ...] [--udp-port N]
[--transport stdio|streamable-http] [--port N] [--version] [--help]
| Option | Default | |
|---|---|---|
--bind ADDR | 127.0.0.1 | where to listen for WSJT-X |
--allow ADDR | this PC | a PC that may send; repeatable; required with a network --bind |
--udp-port N | 2237 | WSJT-X's UDP Server port |
--transport | stdio | streamable-http binds 127.0.0.1 only |
--port N | 8031 | the streamable-http port |
GPL-3.0-or-later. See LICENSE.