Ryan Malloy 48e91a755c Async progress notifications for long-running tools, connection keepalive
Convert scan, analyze, capture, and cal to async with MCP progress
reporting via FastMCP Context. Blocking serial I/O wrapped with
asyncio.to_thread() so the event loop stays free to deliver progress
notifications during hardware sweeps.

Add connection keepalive: _ensure_connected validates stale connections
with a sync probe after 30s idle, and retries on cold-start failures
(fixes flaky first-connect after MCP server restart).
2026-01-30 15:05:50 -07:00
Description
MCP server for NanoVNA-H vector network analyzers
668 KiB
Languages
Python 85.1%
TypeScript 12.1%
CSS 2.4%
HTML 0.4%