--- title: Tool Reference description: All 78 mcnanovna MCP tools --- import { Tabs, TabItem } from '@astrojs/starlight/components'; ## Measurement Tools | Tool | Description | |------|-------------| | `info` | Get device info (firmware, serial, frequency range) | | `sweep` | Set sweep range (start, stop, points) | | `scan` | Run measurement scan, return S-parameter data | | `data` | Get current trace data without new measurement | | `frequencies` | Get frequency list for current sweep | | `marker` | Set/read marker position and values | | `cal` | Run calibration step (open, short, load, thru, isoln, done) | | `save` | Save calibration to flash slot | | `recall` | Recall calibration from flash slot | | `pause` | Pause continuous sweep | | `resume` | Resume continuous sweep | ## Configuration Tools | Tool | Description | |------|-------------| | `power` | Set/get output power level | | `bandwidth` | Set/get IF bandwidth | | `edelay` | Set/get electrical delay compensation | | `s21offset` | Set/get S21 offset correction | | `vbat` | Read battery voltage | | `capture` | Capture LCD screenshot (PNG) | | `measure` | Set measurement mode | | `config` | Get full device configuration | | `saveconfig` | Save configuration to flash | | `clearconfig` | Reset configuration to defaults | | `color` | Set/get display colors | | `freq` | Set single frequency (CW mode) | | `tcxo` | Set/get TCXO calibration | | `vbat_offset` | Set/get battery voltage offset | | `threshold` | Set/get measurement thresholds | ## Display Tools | Tool | Description | |------|-------------| | `trace` | Configure trace display settings | | `transform` | Enable/configure time domain transform | | `smooth` | Set trace smoothing | | `touchcal` | Run touchscreen calibration | | `touchtest` | Test touchscreen | | `refresh` | Force display refresh | | `touch` | Simulate touch press | | `release` | Simulate touch release | ## Device Tools | Tool | Description | |------|-------------| | `reset` | Reset device | | `version` | Get firmware version | | `detect` | Detect and connect to VNA | | `disconnect` | Close serial connection | | `raw_command` | Send raw command to device | | `cw` | Set continuous wave output | | `sd_list` | List SD card files | | `sd_read` | Read file from SD card | | `sd_delete` | Delete file from SD card | | `time` | Get/set device time | ## Diagnostics Tools | Tool | Description | |------|-------------| | `i2c` | I2C bus diagnostics | | `si` | Si5351 clock chip status | | `lcd` | LCD controller info | | `threads` | FreeRTOS thread status | | `stat` | System statistics | | `sample` | Raw ADC samples | | `test` | Run self-test | | `gain` | Set/get receiver gain | | `dump` | Memory dump | | `port` | Port configuration | | `offset` | Calibration offsets | | `dac` | DAC control | | `usart_cfg` | USART configuration | | `usart` | USART I/O | | `band` | Band settings | ## Analysis Tools | Tool | Description | |------|-------------| | `analyze` | Full scan analysis (SWR, Z, return loss) | | `export_touchstone` | Export to .s1p/.s2p format | | `export_csv` | Export to CSV format | | `analyze_filter` | Characterize filter response | | `analyze_xtal` | Extract crystal parameters | | `analyze_tdr` | Time domain reflectometry | | `analyze_component` | Identify unknown L/C/R | | `analyze_lc_series` | Measure series LC resonator | | `analyze_lc_shunt` | Measure shunt LC resonator | | `analyze_lc_match` | Design L-network matching | | `analyze_s11_resonance` | Find S11 resonance points | ## Radiation Pattern Tools | Tool | Description | |------|-------------| | `radiation_pattern` | Generate 3D pattern from S11 scan | | `radiation_pattern_from_data` | Generate pattern from known impedance | | `radiation_pattern_multi` | Multi-frequency pattern comparison | ## Pattern Import Tools | Tool | Description | |------|-------------| | `import_pattern_csv` | Import from CSV file | | `import_pattern_emcar` | Import from EMCAR vna.dat | | `import_pattern_nec2` | Import from NEC2 output | | `import_pattern_s1p` | Import from Touchstone S1P | | `list_pattern_formats` | List supported import formats | ## Example Usage ``` User: Scan my antenna from 144 to 148 MHz with 201 points Claude uses: sweep(144000000, 148000000, 201) Claude uses: scan(s11=true) Claude uses: analyze() ``` ``` User: Analyze this bandpass filter from 1 to 500 MHz Claude uses: sweep(1000000, 500000000, 201) Claude uses: analyze_filter() ``` ``` User: Calibrate for the 2m band Claude uses: sweep(144000000, 148000000, 101) Claude uses: cal("load") # user connects load Claude uses: cal("open") # user connects open Claude uses: cal("short") # user connects short Claude uses: cal("thru") # user connects through Claude uses: cal("done") Claude uses: save(0) ```