logic-analyzer
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| --backend | No | Backend to use for acquisition. Supported values include `dslab` (DSLogic Plus), `sigrok-cli` (sigrok-cli supported devices), and `mock` (deterministic no-hardware backend). | |
| --data-dir | No | Directory where captures are archived as immutable `capture_id` folders. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| capabilitiesA | Report available backends, safety limits, and the recommended workflow. |
| list_devicesB | Discover connected logic analyzers without starting a capture. |
| captureA | Capture digital channels and persist them under a capture_id. Returns per-channel statistics (edges, pulse widths, rough frequency), never the raw sample array. Prefer a short window first. |
| list_capturesB | List saved captures, newest first. |
| self_testA | Hardware self-test using the DSLogic internal pattern generator. Run this before protocol work to distinguish a broken capture path from a bad probe signal. It does not prove that external wiring is correct. |
| analyze_windowB | Analyze a bounded time window of a saved channel. Starts with summaries and at most max_edges transitions so the agent can drill down incrementally. |
| decode_uartB | Decode UART/RS-232-style asynchronous serial from a saved channel window. Always report framing/parity warnings rather than silently trusting text. |
| decode_protocolA | Decode a saved capture with bundled single-layer or stacked protocol decoders. Protocols: can, cjtag, i2c, i2s, ir_nec, jtag, jtag_ejtag, jtag_stm32, lin, mdio, modbus, onewire_link, onewire_network, ps2, qspi, sdcard_sd, sdcard_spi, spdif, spi, spiflash, swd, usb_signalling. Map protocol roles explicitly, for example channels={scl:D0,sda:D1}. Inspect capabilities for each protocol's required/optional channels and typed options. Returns bounded structured events, never raw waveform arrays. |
| import_csvB | Import a DSView CSV export (Export Data -> CSV) as a capture. This is the reliable offline path when DSView was driven manually. Export a narrow time range first. |
| measure_periodB | Measure period, frequency, duty cycle and jitter of a clock/PWM channel. Returns periodic=false when fewer than two rising edges exist in the window. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
The tools mostly target clearly distinct stages of the workflow: discovery (list_devices), capture creation (capture, import_csv), and consumption (analyze_window, decode_uart, decode_protocol, measure_period). The only mild overlap is between analyze_window/measure_period and the decode tools, all of which operate on a saved channel window, though descriptions make the boundaries reasonably clear.
Seven of ten tools follow a clear verb_noun pattern (list_devices, import_csv, analyze_window, measure_period, decode_uart, decode_protocol). A few deviate: 'capabilities' and 'self_test' are nouns and 'capture' is a bare verb, but these are readable and unambiguous.
Ten tools is well scoped for a hardware analysis server, covering discovery, capture, import, analysis, and decoding without redundancy. Each tool appears to earn its place in an incremental capture-then-drill-down workflow.
The surface covers the full capture-to-decode lifecycle plus an offline CSV import path and a hardware self-test. Minor gaps exist: no delete/remove capture or capture metadata retrieval beyond list_captures, and no raw-sample export, but these are workable around.