siglent-sds-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SIGLENT_IP | No | Oscilloscope IP address for auto-connect on startup | |
| SIGLENT_PORT | No | TCP port (only change if your setup differs) | 5025 |
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 | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connectA | Connect to a Siglent oscilloscope over TCP. Returns device identification on success. |
| disconnectA | Disconnect from the oscilloscope. |
| identifyA | Query the oscilloscope identification (*IDN?). Returns manufacturer, model, serial number, and firmware version. |
| get_channelA | Query the configuration of an analog channel. Returns volts/div, offset, coupling, bandwidth limit, trace on/off, probe attenuation, and unit. |
| configure_channelA | Configure an analog channel's parameters. Only specified parameters will be changed. |
| configure_acquisitionA | Control acquisition state and configure timebase/trigger settings. Use 'command' to run/stop the scope, and optionally set timebase and trigger parameters in the same call. |
| get_acquisition_statusA | Get the current acquisition state including sample rate, memory depth, timebase, trigger configuration, and acquisition status. |
| measureC | Take a measurement on a channel. Common parameters: PKPK (peak-to-peak), FREQ (frequency), RMS, MEAN, RISE (rise time), FALL (fall time), DUTY (duty cycle), ALL (all measurements). Installs the measurement on the scope and returns the value. |
| measure_statisticsB | Control measurement statistics. Turn statistics on/off, reset them, or read the statistical values (current, mean, min, max, std-dev, count) for a measurement. |
| get_waveformA | Download waveform data from a channel. Returns voltage and time arrays reconstructed from the raw oscilloscope data. By default returns up to 1000 points (downsampled from full memory depth). |
| screenshotA | Capture the oscilloscope screen as a PNG image. Returns a base64-encoded image. |
| scpi_queryA | Send an arbitrary SCPI query to the oscilloscope and return the response. Use this as an escape hatch for commands not covered by other tools. Note: CHDR is set to OFF, so responses contain only values (no headers). |
| scpi_commandA | Send an arbitrary SCPI command to the oscilloscope (no response expected). Use this as an escape hatch for commands not covered by other tools. |
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 13 tools
Each tool has a clearly distinct purpose: connection, configuration, acquisition control, querying status, downloading waveforms, measurements, statistics, and SCPI escape hatches. No two tools have overlapping functionality.
All tool names follow a consistent snake_case verb_noun pattern (e.g., configure_channel, get_waveform, measure_statistics). The naming is predictable and uniform.
With 13 tools, the server is well-scoped for controlling an oscilloscope. It covers essential operations without being excessive or sparse.
The tool set provides comprehensive coverage for core oscilloscope operations (connection, configuration, acquisition, measurement, screenshot). Minor gaps like advanced trigger settings exist but are mitigated by SCPI escape tools.