# Reported issues for sigrok MCP Server

Pod holds 10 of 10 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to [sigrok MCP Server](/mcp/sigrok-mcp-server).

## Most discussed

### Add filtering and pagination to reduce LLM context consumption

## Background
When an LLM calls sigrok-mcp-server tools, every token in the response consumes context window budget. Several tools return large unfiltered datasets that waste tokens.

## Current State
- `list_supported_hardware` (`handlers.go:71-74`) — returns ALL 160+ drivers, no filtering
- `list_supported_decoders` (`handlers.go:76-79`) — returns ALL 110+ decoders, no filtering
- `list_input_formats` / `list_output_formats` — returns complete lists (smaller, ~10-20 items)
- `show_decoder_deta

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/31) · 2026-02-24 · open · 1 comment

### Add --frames support to capture_data tool

## Summary

Add a `frames` parameter to the existing `capture_data` tool, enabling frame-based acquisition via sigrok-cli's `--frames` flag.

## Background & Motivation

The `capture_data` tool currently supports two acquisition limit modes:

- `--samples` — Stop after N samples
- `--time` — Stop after N milliseconds

However, sigrok-cli also supports `--frames`, which stops after acquiring N frames. This is important for:

- **Oscilloscopes and MSOs** — These devices natively operate in frame-b

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/55) · 2026-03-06 · closed · 0 comments

### Add get_device_options and set_device_option tools

## Summary

Add two new MCP tools — `get_device_options` and `set_device_option` — that allow LLMs to read and write device configuration options without starting a capture.

## Background & Motivation

Currently, device options can only be set indirectly via the `config` parameter of `capture_data`, and current values can only be seen as part of `show_driver_details` output (unstructured text). There is no way to:

- Query the current value of a specific device option (e.g., sample rate, voltag

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/54) · 2026-03-06 · open · 0 comments

### Add render_waveform tool with ASCII art and WaveDrom output

## Summary

Add a new `render_waveform` MCP tool that renders captured signal data as ASCII art or WaveDrom JSON, giving LLMs and humans a visual representation of waveforms.

## Background & Motivation

Currently, the server has 13 MCP tools but none that visualize captured waveform data. The workflow gap is:

```
scan_devices → capture_data → ??? → decode_protocol
```

After capturing data, neither the LLM nor the human can "see" the waveform. They must jump straight to protocol decoding witho

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/53) · 2026-03-06 · closed · 0 comments

### Add documentation site with MkDocs Material and GitHub Pages

## Summary

Set up a documentation site using MkDocs Material, deployed to GitHub Pages at `kenosinc.github.io/sigrok-mcp-server`.

A dedicated docs site will make the project more accessible to new users by providing structured guides, tool references, and device documentation — beyond what a single README can offer.

## Tasks

- [ ] Add `mkdocs.yml` configuration
- [ ] Restructure `docs/` directory with organized sections
  - Getting Started (installation, quick start, firmware)
  - Tools refe

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/34) · 2026-02-24 · closed · 0 comments

### Integrate device profiles with SCPI query for automatic connection setup

## Background
Device profiles contain connection settings (baudrate, parity, etc.) and known SCPI commands. Currently, the LLM must manually look up a profile, extract settings, and pass them to `serial_query` — a multi-step process that wastes context and is error-prone.

## Current State
- `get_device_profile` (`handlers.go:479-503`) returns profile with `Connection` struct
- `serial_query` (`handlers.go:417-477`) requires all connection params explicitly
- `Connection` struct (`devices.go:27-

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/33) · 2026-02-24 · open · 0 comments

### Extend SCPI query to support TCP, USBTMC, and VXI transports

## Background
SCPI instruments connect via multiple transports: serial, TCP/IP (raw sockets, VXI-11), and USB TMC. The server currently validates these transport URIs for `scan_devices`/`capture_data` (via sigrok-cli), but direct SCPI queries (`serial_query`) only support serial ports.

## Current State
- `serial_query` tool (`tools.go:97-110`, `handlers.go:417-477`) — serial-only
- `internal/serial/serial.go` — implementation uses `go.bug.st/serial`, serial ports only
- `serial.Querier` interfa

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/32) · 2026-02-24 · open · 0 comments

### Expose static reference data as MCP Resources instead of Tools

## Background
MCP Resources are designed for static/reference data that clients can cache and browse, while Tools are for actions with side effects or dynamic computation. Currently, several tools return large static datasets on every call.

## Current State
- Device profiles are already registered as Resources (`tools.go:125-156`, URI `device://<id>`)
- Resource capabilities: `(false, false)` — no templates, no subscriptions (`main.go:28`)
- The following tools return static reference data but 

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/30) · 2026-02-24 · open · 0 comments

## Most recent

### Publish Docker image to GitHub Container Registry (ghcr.io)

## Summary

Set up automated publishing of the sigrok-mcp-server Docker image to GitHub Container Registry (ghcr.io).

## Tasks

- [ ] Create a GitHub Actions workflow for building and pushing the Docker image
  - Trigger on release tags (e.g., `v*`)
  - Trigger on pushes to `main` for `main` tag
- [ ] Support multi-platform builds (linux/amd64, linux/arm64) using `docker/build-push-action`
- [ ] Tag images appropriately (semver tags, `main`)
- [ ] Update README and docs with pull instructions

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/24) · 2026-02-10 · closed · 0 comments

### Add SCPI serial device support (DMMs, power supplies via /dev/ttyUSB0)

## Background

During a hands-on session, we successfully connected to an OWON XDM1241 DMM via a CH340 USB-to-serial adapter (`/dev/ttyUSB0`) using SCPI commands at 115200/8N1. The device responded correctly to `*IDN?` and `MEAS?` queries from inside the Docker container. However, this required `docker exec` into the MCP container — there is no MCP tool to interact with serial SCPI devices directly.

## What's Needed

### 1. Validation regex update

The current `validOptionRe` in `internal/tools

[Read the thread](https://github.com/KenosInc/sigrok-mcp-server/issues/18) · 2026-02-10 · closed · 0 comments

The remaining reports are on [the project's issue tracker](https://github.com/KenosInc/sigrok-mcp-server/issues).
