SpectraMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SPECTRAMCP_WORKSPACE | No | Local directory path for saving exported plots and IQ segments. |
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
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| load_iq_fileC | Loads .wav, .iq, .sigmf-data/.sigmf-meta, or .npy into a normalized IQBuffer. |
| capture_from_sdrB | Captures a fixed-duration IQ segment from an attached RTL-SDR/HackRF/SoapySDR device. |
| list_sdr_devicesA | Enumerates attached SDR hardware and reports supported sample rates / tunable range. |
| compute_fftB | Windowed FFT with configurable window (Hann/Hamming/Blackman) and zero-padding factor. |
| render_spectrogramC | STFT spectrogram image with configurable frame size, hop, and dB dynamic range. |
| render_waterfallC | Rolling PSD waterfall across N consecutive capture segments. |
| range_doppler_mapC | 2D windowed FFT (fast-time/slow-time) over a supplied RadarCube. |
| ca_cfar_detectC | 2D Cell-Averaging CFAR detector with configurable guard/training cell geometry. |
| mvdr_beamformB | Adaptive Capon/MVDR beamformer with diagonal-loading stabilization for rank-deficient snapshots. |
| kalman_trackC | Constant-velocity Kalman tracker associating detections across sequential frames. |
| classify_modulationB | Rule-based AM/FM/OOK/FSK/PSK-family classifier using envelope, kurtosis, and spectral-flatness features. |
| micro_doppler_signatureC | Cadence-spectrum periodicity extraction for rotor-vs-flutter style signature comparison. |
| export_plotC | Saves any generated figure directly to a local folder on the user's PC. |
| export_iq_segmentC | Saves an IQ segment slice directly to a local folder on the user's PC. |
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 14 tools
Each tool has a clearly distinct purpose in the signal processing pipeline, from device enumeration and IQ capture to advanced radar processing and export. No two tools overlap in functionality.
All tool names use lowercase with underscores and mostly follow a verb_noun pattern (e.g., load_iq_file, capture_from_sdr). A few names like range_doppler_map and micro_doppler_signature are noun-heavy, but the overall style is consistent and predictable.
14 tools cover the essential capabilities for an SDR server without being excessive. Each tool serves a specific, non-redundant function, and the count is appropriate for the scope.
The set covers acquisition, analysis (FFT, spectrogram, waterfall, radar processing, classification, tracking), and export. While basic filtering or demodulation tools are missing, the surface is comprehensive for typical SDR and radar workflows.