Author Topic: Saleae Logic2 has an MCP server!  (Read 1219 times)

0 Members and 1 Guest are viewing this topic.

Offline dobsonr741Topic starter

  • Frequent Contributor
  • **
  • Posts: 967
  • Country: us
Saleae Logic2 has an MCP server!
« on: April 19, 2026, 03:25:32 am »
Pleasant surprise: Saleae just added MCP server support to Logic 2.
That means my cheap Chinese CY7C68013A-based 8-channel logic analyzer suddenly gained superpowers when paired with Claude.

Claude can now:
  • set up a structured test plan for captures
  • inspect and reason about the capture files
  • iterate on coding, flashing, debugging without the usual back-and-forth guesswork.

For a $10-ish FX2LP clone, that’s a pretty wild upgrade in capability.

https://docs.saleae.com/mcp/guides/getting-started
 

Offline Smokey

  • Super Contributor
  • ***
  • Posts: 3865
  • Country: us
  • Not An Expert
Re: Saleae Logic2 has an MCP server!
« Reply #1 on: April 19, 2026, 10:37:33 am »
Logic analyzer data dumps are pretty huge.  How can you interact with that and now burn a ton of tokens on huge data files?
 

Offline Siwastaja

  • Super Contributor
  • ***
  • Posts: 11131
  • Country: fi
Re: Saleae Logic2 has an MCP server!
« Reply #2 on: April 19, 2026, 11:34:27 am »
Logic analyzer data dumps are pretty huge.  How can you interact with that and now burn a ton of tokens on huge data files?

I guess it would be no different from any other huge data files (very common on any workflow - megabytes of logs, CSV data etc.) - so it would read parts of it, write ad-hoc python analysis scripts and whatever it already does in similar cases.

In fact I think Claude is saving tokens in reading input files pretty aggressively, rarely more than a few hundred lines, maybe 1-2k tokens at once. It's nearly a wonder how well it works with strategic spot reads, and sometimes it indeed doesn't work and it misses something by not reading enough.

It's interesting to see humans work in a very similar way, because our working memory is small and slow. Glancing through, doing spot checks. Writing throwaway tooling is what really good human developers do a lot, and LLMs are good at vomiting that kind of analysis code in split second and somehow get it right the first try, so that's a really good and relatively low-cost pattern for them. This pattern alone seems to make them better than average human developers who are afraid of writing quick tooling.
« Last Edit: April 19, 2026, 11:37:53 am by Siwastaja »
 

Offline dobsonr741Topic starter

  • Frequent Contributor
  • **
  • Posts: 967
  • Country: us
Re: Saleae Logic2 has an MCP server!
« Reply #3 on: April 19, 2026, 06:25:12 pm »
Quote
Logic analyzer data dumps are pretty huge.  How can you interact with that and now burn a ton of tokens on huge data files?

Looked at the CSV file Logic2 created. Columns are the channels, rows are the timestamps whenever there was a change on any input. So the file size is proportional with the count of edges, not the count of samples.

These are the functions the MCP implements - in Claude's summary:

Code: [Select]
The Logic2 MCP server provides these tools:                                             
                                                                                         
  Capture lifecycle                                                                       
   
  - get_devices — list connected Saleae devices (incl. simulation if requested)           
  - start_capture — start a new capture (manual / timed / digital-trigger modes; channel + sample-rate config)                                                                   
  - stop_capture — stop an active capture                                                 
  - wait_capture — block until a capture finishes                                         
  - close_capture — close a capture and free resources                                   
                                                                                         
  File I/O                                                                               
                                                                                         
  - load_capture — load a .sal file                                                       
  - save_capture — save a capture to .sal                                                 
                                                                                         
  Analyzers                                                                               
   
  - add_analyzer — add a built-in protocol analyzer (SPI, I2C, Async Serial, etc.) with settings                                                                             
  - remove_analyzer — remove a protocol analyzer                                         
  - add_high_level_analyzer — add a custom HLA from an extension directory, chained on top  of an analyzer                                                                         
  - remove_high_level_analyzer — remove an HLA                                           
                                                                                         
  Export                                                                               

  - export_data_table_csv — export analyzer results table as CSV (filterable, column-selectable)
  - export_raw_data_csv — export raw digital/analog samples as CSV (channels selectable, analog downsample ratio)                                                               
  - export_raw_data_binary — export raw samples as binary files
  - legacy_export_analyzer — legacy single-analyzer export with radix selection           
                                                                                         
  Caveats from earlier this session                                                       
                                                                                         
  - The Saleae Logic 8 here doesn't accept arbitrary sample rates — must pick one of the discrete values it advertises (12 / 16 / 24 MS/s digital, etc.)                       
  - Doesn't accept digitalThresholdVolts either (fixed threshold, no software setting)   
  - Captures need a buffer-size hint (bufferSizeMegabytes) for manual mode               
  - After stop_capture, the data persists until close_capture — you can re-export the same captureId multiple times
« Last Edit: April 19, 2026, 06:27:24 pm by dobsonr741 »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf