rigol
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RIGOL_ADDR | No | Set to a device path like /dev/usbtmcN to explicitly pick a scope. By default the scope is found automatically. | |
| RIGOL_CAPTURE_DIR | No | Override the directory where captures and backups are stored. Defaults to ~/.local/share/rigol-remote/captures/. |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| identifyA | Manufacturer, model, serial number and firmware of the attached scope. |
| screenshotA | Capture the scope's screen (800x480 PNG). Also saved to disk; the path is returned. |
| get_settingsA | Channel (on/off, V/div, offset, coupling, probe ratio), timebase, trigger and acquisition settings. Values are SI: volts, seconds, samples per second. |
| measureA | The scope's automatic measurements on one channel. channel: 1-4 or CHAN1-CHAN4. items: any of FREQ, FTIM, MAR, MPAR, NDUT, NEDG, NPUL, NSLEW, NWID, OVER, PDUT, PEDG, PER, PPUL, PRES, PSLEW, PVRMS, PWID, RTIM, TVMAX, TVMIN, VAMP, VARI, VAVG, VBAS, VLOW, VMAX, VMID, VMIN, VPP, VRMS, VTOP, VUP (long forms like FREQuency also accepted). A value of null means the scope could not measure it. Side effect: each item is added to the measurement bar on the scope's screen (it shows at most 5, so older ones scroll off). |
| get_waveformA | Read one channel's on-screen trace (1200 points), save it as CSV (time_s,volts) and return
summary statistics plus the CSV path. |
| scpi_queryA | Send one read-only SCPI query (its header must end in '?', e.g. ':TRIGger:STATus?' or ':CHANnel1:SCALe?') and return the reply. Commands that change settings are refused. |
| save_setupA | Save the scope's whole setup to a file and return its path; restore_setup(path) brings it back. |
| configure_channelA | Change one channel's settings; only the parameters given are changed. channel: 1-4 or CHAN1-CHAN4. probe_ratio must match the probe's attenuation switch (1, 10, ...); it rescales the V/div. Returns requested/before/after for each setting. |
| configure_timebaseB | Change the horizontal settings; only the parameters given are changed. offset_s moves the trigger point. Returns requested/before/after for each setting. |
| configure_triggerA | Change the edge-trigger settings; only the parameters given are changed. source: 1-4, CHAN1-CHAN4 or AC (mains). Giving source, slope or level switches the trigger to EDGE mode. sweep AUTO free-runs without a trigger, NORMAL waits for one. Returns requested/before/after. |
| configure_acquisitionA | Change how the scope acquires; only the parameters given are changed. averages (a power of two, 2-1024) applies in AVERAGES mode. Valid memory depths depend on how many channels are on (1 channel: 12000 to 24000000; 2: 6000 to 12000000; 3-4: 3000 to 6000000). Returns requested/before/after. |
| run_controlA | Start (run) or freeze (stop) acquisition, arm one acquisition (single), or force a trigger. run and single overwrite a stopped capture. For single, wait_s waits up to that long for it to complete. Returns the trigger status (RUN, WAIT, TD, AUTO or STOP) and sweep mode. |
| clear_measurementsA | Remove one item (1-5, left to right) or, by default, all items from the measurement bar at the bottom of the scope's screen. That includes items the user added. |
| restore_setupA | Restore a whole setup saved by save_setup (or a backup from another tool). The current setup is backed up first. Takes about 6 s. Returns the backup path and the resulting settings. |
| autoscaleA | Let the scope choose scales, timebase and trigger for the connected signals, like the AUTO key. It replaces the user's setup, so it is backed up first. Returns the backup path and the new settings. |
| resetA | Reset the scope to factory defaults (*RST). The setup is backed up first. Returns the backup path and the new settings. |
| scpi_writeA | Send one raw SCPI command that expects no reply, for anything the other tools don't cover (e.g. ':CHANnel1:VERNier ON'). Use scpi_query for queries. The setup is backed up first. Fails if the scope reports an error. |
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 17 tools
Most tools have clearly distinct purposes (screenshot, identify, measure, get_waveform, the configure_* family). The only notable overlap is the generic scpi_query/scpi_write pair against the dedicated configure/get tools, but the descriptions explicitly frame them as escape hatches for uncovered functionality, which mitigates confusion.
The set follows a mostly verb/verb_noun imperative pattern (get_settings, save_setup, restore_setup, configure_channel, clear_measurements, run_control) with readable single-word verbs (identify, measure, autoscale, reset). Minor deviations like the noun 'screenshot' and the prefix-ordered scpi_query/scpi_write keep it from being perfectly uniform.
17 tools is slightly above the ideal 3-15 range but each one maps to a genuine, non-redundant oscilloscope capability (acquisition, trigger, channels, measurements, waveform, setup lifecycle). Nothing feels padded for a full instrument-control surface.
The surface covers the core lifecycle well: identity, settings/waveform/measurement reads, channel/timebase/trigger/acquisition configuration, run control, setup backup/restore, autoscale and reset. Gaps like math/FFT, cursors, or non-edge trigger modes are real but workable through the scpi_write escape hatch and setup backup protection.