Overview
Each IDA-Instance is a dedicated LXC container running IDA Pro 9.4 with a built-in MCP server. You interact with it through two channels:
- Browser VNC — the full IDA GUI, accessible at
vnc.username.idainstances.xyz - MCP server — 66 tools exposed over HTTP at
username.idainstances.xyz/mcp
Both are proxied through nginx on the host. Your container has no internet egress — it can only receive traffic from the proxy.
Connecting your MCP client
Claude Code
claude mcp add --transport http ida \ https://username.idainstances.xyz/mcp \ --header "Authorization: Bearer YOUR_API_KEY"
Generic JSON config
{
"mcpServers": {
"ida": {
"url": "https://username.idainstances.xyz/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Your API key is shown on your dashboard after launching an instance. It persists across reboots.
Browser VNC
Navigate to vnc.username.idainstances.xyz in any browser. You'll be redirected to the noVNC web client. Enter your VNC password (also shown on your dashboard) and IDA's full GUI appears.
No client software needed. Works in Chrome, Firefox, Safari, Edge.
Using MCP tools
Once connected, your AI client can call any of the 66 available tools. Common workflows:
# Survey a binary "open /tmp/crackme.exe and give me an overview" # Decompile a function "decompile the function at 0x401000" # Rename and comment "rename sub_402000 to 'parse_header' and add a comment" # Run Python in IDA "run print(idaapi.get_input_file_path()) in IDA"
Endpoints
POST /mcp— MCP JSON-RPC over HTTPGET /sse— SSE stream for MCP eventsGET /key— one-time API key fetch (burned after use)GET /config.html— web config panel
Available tools
66 tools total. Key categories:
- Session — idb_open, idb_list, idb_close
- Triage — survey_binary, analyze_function, analyze_component
- Decompilation — decompile, disasm, force_recompile
- Typing — set_type, type_inspect, infer_types, make_data
- Renaming — rename (batch func/data/local/stack)
- Comments — set_comments, append_comments, add_bookmark
- Patching — patch_asm, patch, define_func, define_code
- Python — py_eval (run arbitrary Python in IDA)
- Signatures — make_signature, find_xref_signatures
- Data flow — trace_data_flow (multi-hop xref traversal)
Environment
- IDA Pro 9.4 with Hex-Rays decompiler
- Python 3.14 with IDAPython
- idalib for headless analysis
- Isolated LXC container, no internet egress
- 1920x1080 VNC display