The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the IDA Pro MCP listing page.
AI-powered reverse engineering without launching IDA Pro GUI.
40 comprehensive tools for binary analysis, decompilation, and annotation.
Multi-session support - multiple LLMs can analyze the same binary simultaneously.
Works with Claude, Gemini, Cursor, VS Code, and any MCP-compatible client.
This adds the MCP server to your IDE's mcp_config.json. Restart your IDE.
Key Features:
idat.exe| Tool | Description | Key Actions |
|---|---|---|
session | Multi-file/multi-LLM mgmt | discover, create, list, switch, close |
Sessions enable:
- Multiple LLMs analyzing the same binary with separate IDBs
- Seamless switching between multiple open files
- Automatic file locking to prevent conflicts
- IDB discovery with "in use" status
| Tool | Description | Key Actions |
|---|---|---|
idb | Database metadata | meta, segments, cursor, entrypoints |
code | Decompilation & disassembly | decompile, disassemble, xrefs_to, xrefs_from, graph |
data | Data enumeration | functions, globals, strings, imports, exports |
search | Pattern search | bytes, string, immediate, name, pattern |
types | Type management | list, get, define, apply, get_members |
| Tool | Description | Key Actions |
|---|---|---|
modify | Rename, comment, patch | rename, comment, set_type, patch |
funcs | Function management | create, delete, set_flags, add_comment |
segments | Segment management | list, add, delete, set_attr |
bulk | Batch operations | rename, comment, set_type, import_json, export_json |
comments_ai | AI-optimized comments | get_context, set_structured, bulk_set, export_md |
| Tool | Description | Key Actions |
|---|---|---|
agent | High-level helpers | analyze_function, explore_address, find_references, search_all |
microcode | Hex-Rays IR | get, blocks, instructions |
graph | Graph export | callgraph, cfg |
memory | Memory read/write | read, write |
ctree | Hex-Rays AST access | get, find_calls, find_vars, find_strings, find_conditions |
diff | Binary diffing | functions, bytes, signatures, names, summary |
lumina | Cloud function recognition | pull, push, status, history, search |
symbols | Debug symbols (PDB/DWARF) | load_pdb, load_dwarf, status, apply, export |
patterns | FLIRT pattern matching | generate, match, list_sigs, apply_sig, create_sig |
structs | Struct recovery | recover, analyze_usage, list, create, apply |
emulate | Code emulation | snippet, appcall, trace, decrypt_strings, eval_expr |
export | Multi-format export | listing, html, idc, json, binexport, headers |
history | DB version control | undo, redo, list, snapshot, restore, diff |
strings_xref | Advanced string analysis | analyze, xref_chain, detect_encoded, find_format, clusters |
entropy | Entropy analysis | section, region, packed_detect, crypto_detect, compare |
imports_deep | Deep import analysis | thunks, delay, forwarded, ordinal, api_sets, resolve |
trace_analysis | Execution trace analysis | import_trace, analyze_coverage, find_loops, extract_api_calls |
hooks | Hook script generation | suggest, generate_frida, generate_detours, find_targets |
taint | Static taint analysis | trace_arg, trace_return, find_sinks, data_flow, slice |
coverage | Code coverage analysis | import_drcov, import_lighthouse, highlight, report, uncovered |
| Tool | Description | Key Actions |
|---|---|---|
misc | Python exec, signatures | python, idc, load_sig, bookmarks |
files | Database I/O | save, close, open, batch |
plugins | Plugin management | list, run |
trace | Debugger traces | get, clear, set_options |
fixups | Relocations | list, get, add, delete |
data_ops | Data creation | make_data, make_array, make_string, make_code |
debug | Debugger control | start, stop, continue, step, breakpoints, regs |
nav | Navigation helpers | bookmarks, goto, cursor, interesting |
colorize | Code coloring | set_func, set_range, get, clear, palette |
| Client | Status | Notes |
|---|---|---|
| Google Antigravity | ✅ Recommended | Use install_antigravity.py |
| Claude Desktop | ✅ Full | Add to claude_desktop_config.json |
| Cursor | ✅ Full | Add to settings.json |
| VS Code | ✅ Full | MCP extension |
| Gemini CLI | ✅ Full | Google's CLI |
For batch analysis or custom integrations, use the HTTP daemon:
Set IDADIR environment variable to your IDA installation path:
MIT License
Built for reverse engineers who prefer AI assistance over tedious clicking.