sigrok MCP Server

io.github.KenosInc由 GitHub 帳號 KenosInc 發布v0.2.0更新於 Oct 24, 2026

Wraps sigrok-cli for signal analysis: capture data, decode protocols, and query instruments.

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

本機 MCP 伺服器,封裝 sigrok-cli,讓助理從邏輯分析儀與量測裝置擷取、解碼並分析訊號。

可以做什麼
列出支援的硬體驅動程式、協定解碼器、輸入與輸出格式,並顯示 sigrok-cli 版本資訊。查看協定解碼器或硬體驅動程式的詳細資訊,包括選項、通道與文件。掃描已連接的硬體裝置並檢查韌體可用性。從裝置擷取通訊資料並儲存到檔案。使用 I2C、SPI、UART、CAN 等協定解碼器解碼已擷取的資料。
適用情境
當你使用邏輯分析儀或量測硬體,希望助理探索裝置、擷取匯流排資料並解碼 I2C、SPI、UART、CAN 等協定並說明結果時適用。也適合對既有擷取檔案做純協定分析。
執行需求
以本機 stdio 程序執行,通常使用已發佈的容器映像,或以 Go 1.25+ 從原始碼建置。需要安裝並可存取 sigrok-cli,透過 SIGROK_CLI_PATH、SIGROK_TIMEOUT_SECONDS 與 SIGROK_WORKING_DIR 設定。容器存取 USB 裝置需要特權模式;需要韌體的裝置要掛載韌體目錄。
安裝前請注意
擷取會把資料寫入本機檔案。為存取 USB 的容器設定使用特權模式,會授予較廣的主機權限。部分硬體驅動程式需要未隨附的韌體檔案,須另行取得。未宣告身分驗證,任何能啟動此程序的人都能操作所連接的硬體。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 sigrok MCP Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

sigrok-mcp-server

[CI] [Go Version] [License: MIT] [GitHub Release]

A Model Context Protocol (MCP) server for sigrok — enables AI agents like Claude Code, Codex, and Cursor to capture, decode, and analyze signals from logic analyzers and measurement devices. Supports I2C, SPI, UART, CAN, and 100+ protocols via sigrok-cli.

Documentation | Getting Started

Tools

ToolDescription
list_supported_hardwareList all supported hardware drivers
list_supported_decodersList all supported protocol decoders
list_input_formatsList all supported input file formats
list_output_formatsList all supported output file formats
show_decoder_detailsShow detailed info about a protocol decoder (options, channels, documentation)
show_driver_detailsShow detailed info about a hardware driver (functions, scan options, devices)
show_versionShow sigrok-cli and library version information
scan_devicesScan for connected hardware devices
capture_dataCapture communication data from a device and save to file
decode_protocolDecode protocol data from a captured file using protocol decoders
check_firmware_statusCheck firmware file availability in sigrok firmware directories

Quickstart

Docker

bash
docker pull ghcr.io/kenosinc/sigrok-mcp-serverdocker run -i ghcr.io/kenosinc/sigrok-mcp-server

From source

Requires Go 1.25+ and sigrok-cli installed on your system.

bash
go build -o sigrok-mcp-server ./cmd/sigrok-mcp-server./sigrok-mcp-server

The server communicates over stdio (stdin/stdout JSON-RPC).

Configuration

Configuration is via environment variables:

VariableDefaultDescription
SIGROK_CLI_PATHsigrok-cliPath to the sigrok-cli binary
SIGROK_TIMEOUT_SECONDS30Command execution timeout in seconds
SIGROK_WORKING_DIR(empty)Working directory for sigrok-cli execution

MCP Client Configuration

Claude Desktop

Add to your claude_desktop_config.json:

json
{  "mcpServers": {    "sigrok": {      "command": "docker",      "args": ["run", "-i", "--rm", "ghcr.io/kenosinc/sigrok-mcp-server"]    }  }}

To access USB devices from the container:

json
{  "mcpServers": {    "sigrok": {      "command": "docker",      "args": ["run", "-i", "--rm", "--privileged", "ghcr.io/kenosinc/sigrok-mcp-server"]    }  }}

To also provide firmware files for devices that require them (e.g. Kingst LA2016):

json
{  "mcpServers": {    "sigrok": {      "command": "docker",      "args": [        "run", "-i", "--rm", "--privileged",        "-v", "/path/to/sigrok-firmware:/usr/local/share/sigrok-firmware:ro",        "ghcr.io/kenosinc/sigrok-mcp-server"      ]    }  }}

Claude Code

bash
claude mcp add sigrok -- docker run -i --rm ghcr.io/kenosinc/sigrok-mcp-server

With USB access and firmware:

bash
claude mcp add sigrok -- docker run -i --rm --privileged -v /path/to/sigrok-firmware:/usr/local/share/sigrok-firmware:ro ghcr.io/kenosinc/sigrok-mcp-server

Firmware

Some hardware drivers require firmware files that cannot be bundled with this server due to licensing restrictions. The server works without firmware for devices that don't need it (e.g. demo, protocol-only analysis). For devices that require firmware (e.g. Kingst LA2016, Saleae Logic16), mount your firmware directory into the container at /usr/local/share/sigrok-firmware.

Use the check_firmware_status tool to verify firmware availability and diagnose device detection issues.

See the sigrok wiki for firmware extraction instructions for your device.

Architecture

MCP Client (LLM)    |  stdio (JSON-RPC)    vsigrok-mcp-server (Go)    |  exec.Command    vsigrok-cli    |    vlibsigrok / libsigrokdecode
  • Transport: stdio (stdin/stdout JSON-RPC)
  • No C bindings: sigrok-cli is the sole interface to sigrok
  • Capture & decode: capture_data acquires data from devices; all other tools are read-only queries
  • Structured output: Raw sigrok-cli text output is parsed into JSON

Workflow Example

A typical signal analysis workflow using Claude:

  1. scan_devices — Discover connected hardware
  2. show_driver_details — Check driver capabilities
  3. capture_data — Capture communication data to file
  4. decode_protocol — Decode captured data with protocol decoders
  5. Claude analyzes the decoded output and explains the communication

Development

bash
# Buildgo build ./...
# Testgo test ./... -race
# Lintgolangci-lint run ./...

Project Structure

cmd/sigrok-mcp-server/     Entry pointinternal/  config/                  Environment-based configuration  sigrok/    executor.go            sigrok-cli command execution with timeout    parser.go              Output parsing (list, decoder, driver, version, scan)    testdata/              Real sigrok-cli output fixtures  tools/    tools.go               MCP tool definitions and registration    handlers.go            Tool handler implementations

License

MIT (Kenos, Inc.)

來源:README.md,提交 71a652d

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分