github Captain-AI-Hub/IDA-MCP v1.1.2
v1.1.2 — usable TUI (scroll, search, clean quit) + lease PID-reuse guard

latest release: v1.1.3
3 hours ago

What's Changed

Fixed

The interactive TUI is now actually usable — the 1.1.0 iteration had serious interaction gaps found in hands-on use:

  • Content is no longer clipped to one screen — the main pane is a scrollable RichLog; long disassembly and pseudocode scroll normally.
  • Searchable function sidebar — the sidebar is a ListView with a live filter box: type to narrow by name, arrow keys to walk matches, ENTER to open. No more hunting through an unfiltered tree.
  • Navigation keeps the function context — the app tracks the current function object; x/f (xrefs/follow), G (call graph) and b (ASCII CFG) all operate on it, and g resolves a raw address to its containing function. After seeking main you can view its pseudocode and jump straight to its CFG — previously the view lost all context.
  • Quitting no longer leaks the worker — q saves and closes the worker when this TUI is its last user (no more leftover .id0/.id1/.id2 unpacked files); ctrl+q leaves the worker alive for MCP clients, as does --keep-open.

Fixed

  • Lease PID-reuse guard (the root cause of "close doesn't work, nobody is using it"): when the OS recycles a dead client's PID to an unrelated process (a daemon, a shell), the lease liveness check used to report the lease as alive forever, so close_database kept saying "released" without shutting the worker. Lease holders now must also look like a python process (idamcp/ida_mcp/pytest marker or any python interpreter) — a recycled PID owned by snapd or bash no longer blocks cleanup.

Full Changelog: v1.1.1...v1.1.2

Don't miss a new IDA-MCP release

NewReleases is sending notifications on new releases.