Pass the session ID returned by `idb_open` as `database` on each headless analysis call; a filename, path, or implicit current database is not accepted.
Action requiredInferredAffects: Clients and scripts migrating from the single-binary idalib server
Remove `--unsafe` from `ida-pro-mcp` launches; enable GUI debugger tools using `?ext=dbg` on the MCP URL (or `--ida-rpc` URL). `idalib-mcp` retains its separate `--unsafe` flag.
Action requiredInferredAffects: Users launching the GUI proxy with 1.4.0’s `--unsafe` option
Read successive `decompile` pages using `cursor.next` as `offset`; the default page is 500 lines. For other truncated tool results, use the returned full-output download link.
Action requiredInferredAffects: Automation expecting complete analysis results in one response
The GUI plugin autostarts its server by default; host, port and autostart preferences can be saved per database. The proxy discovers running IDA instances unless `--ida-rpc` is supplied.
Replace removed `--install-plugin` launches with a separate `ida-pro-mcp --install` step. Unattended installs should specify client targets, `--scope` and `--transport` rather than relying on the interactive selector.
Action requiredInferredAffects: Scripts using legacy installation flags or unattended installation
The README recommends the official Hex-Rays IDA MCP Server. It also says the GUI MCP plugin is no longer recommended and will eventually be deprecated, preferring `idalib-mcp`.
Analyze multiple binaries in persistent IDA sessions from one MCP client.
Details
`idalib-mcp` manages persistent workers and can adopt GUI sessions; calls identify the database explicitly. The tool API, installer defaults and debugger access differ from 1.4.0.
Also: Batch edits, pattern searches, Python execution, signatures, analysis summaries, tool profiles and saved call history.
Default-branch commit c133c3853faa111a9b00ee615c013b720d0c4acd, dated 2026-09-26; Python 3.11+, IDA Pro and an MCP client. Headless use requires activated idalib; documented plugin installs use uv.
Limit lifted / inferred: Analyze a binary without opening the IDA Pro GUI.Action required / inferredAction required / inferredAction required / inferredAction required / inferred: Control a debugged program and inspect registers, c…Improved / inferred: Inspect functions, disassembly, pseudocode, and cro…Action required / inferredImproved / inferred: Rename functions and local variables, set their typ…Improved / inferred: Patch assembly instructions in an IDA database.Improved / inferred: List and search strings in an IDA database.Added / inferred: Find byte patterns, instruction operands, constants…Added / inferred: Survey a binary and inspect related functions in co…Added / inferred: Correct code, function, and data definitions in an…Added / inferred: Run Python expressions or script files in the IDA a…Added / inferred: Generate byte signatures for functions, address ran…Added / inferred: Browse binary metadata, segments, types, structures…Added / inferred: Select which analysis tools an MCP client can acces…Added / inferred: Save an analyzed database or a compressed copy thro…Added / inferred: Export the MCP tool-call history stored with an IDA…Improved / inferred: Connect an MCP client to an open IDA Pro database.Behavior changed / inferredAction required / inferredBehavior changed / inferredBehavior changed / inferredBehavior changed
Analyze binaries through MCP without opening the IDA Pro GUI.
Details
Adds `idalib-mcp` for headless analysis and debugger tools enabled with `--unsafe`. String-search calls and disassembly response formats change.
Also: Debugger control, memory reads, stack and structure inspection, assembly patches, and more client integrations.
Use tag 1.4.0 with Python 3.11+ and IDA Pro 8.3+; headless analysis needs idalib. IDA Free is unsupported.
Added: Analyze a binary without opening the IDA Pro GUI.Added: Control a debugged program and inspect registers, c…Added: Read bytes, integers, strings, and known global-var…Added: Inspect structures, their field values, and referen…Added: Inspect, create, rename, retype, and delete stack-f…Added: Patch assembly instructions in an IDA database.Improved: Inspect binary metadata, entry points, and the curr…Improved: Inspect functions, disassembly, pseudocode, and cro…Limit lifted: Rename functions and local variables, set their typ…Action required / inferred: List and search strings in an IDA database.Action required / inferred: Inspect functions, disassembly, pseudocode, and cro…Improved: Connect an MCP client to an open IDA Pro database.Behavior changed / inferred: Connect an MCP client to an open IDA Pro database.
Find strings in an IDA database from an MCP client.
Details
Adds `list_strings`, `search_strings`, global-variable renaming and typing, and `declare_c_type`. Python 3.11 is now required.
Also: Global-variable edits, C type declarations, Linux and Cursor setup, and metadata compatibility.
Use tag 1.3.0 with Python 3.11+, IDA Pro 8.3+ and an MCP client; restart IDA and the client after installation.
Added: List and search strings in an IDA database.Improved: Rename functions and local variables, set their typ…Added: Connect Linux MCP clients to IDA Pro.Improved: Connect an MCP client to an open IDA Pro database.Now works: Inspect binary metadata, entry points, and the curr…Action requiredNow works: Rename functions and local variables, set their typ…
Inspect a binary’s disassembly and decompiled functions from an MCP client.
Details
The baseline exposes function lookup, disassembly, decompilation, cross-references, IDB metadata, and annotation tools. It also converts numeric representations.
Use tag 1.2.0 with Python 3.10+, IDA Pro 8.3+ and a supported MCP client; install the plugin with `ida-pro-mcp --install`.
Added: Inspect functions, disassembly, pseudocode, and cro…Added: Rename functions and local variables, set their typ…Added: Inspect binary metadata, entry points, and the curr…Added: Convert numbers between decimal, hexadecimal, and o…Added: Connect an MCP client to an open IDA Pro database.