IDAMCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@IDAMCPList all functions in the binary"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
IDAMCP
IDA Pro plugin that exposes IDA Python execution via MCP (Model Context Protocol) over SSE. This allows AI tools like Claude Code to interact with IDA Pro for reverse engineering tasks.
How It Works
IDAMCP runs an MCP server inside IDA Pro that provides an execute_script tool. AI clients send IDA Python code through MCP, which gets executed on IDA's main thread. Results (stdout, stderr, return values) are sent back to the client.
AI Client (Claude Code, etc.)
│
│ MCP over SSE
▼
IDAMCP Server (127.0.0.1:13337)
│
│ ida_kernwin.execute_sync
▼
IDA Pro Main ThreadRelated MCP server: IDAssistMCP
Requirements
IDA Pro 9.0+
Python 3.12+
Installation
git clone https://github.com/won0-kim/idamcp.git
cd idamcp
uv syncInstall the plugin into IDA's plugins directory:
python install.pyTo specify a custom IDA installation path:
python install.py --ida-dir "C:\Path\To\IDA"To uninstall:
python install.py --uninstallUsage
Open IDA Pro — the MCP server starts automatically on
http://127.0.0.1:13337/mcpToggle the server on/off with Ctrl+Shift+M
Connect your MCP client to the server
MCP Client Configuration
Add to your MCP client config (e.g., .mcp.json):
{
"mcpServers": {
"idamcp": {
"type": "http",
"url": "http://127.0.0.1:13337/mcp"
}
}
}execute_script Tool
The server exposes a single execute_script tool. Send IDA Python code as a string. Assign to __result__ to return a specific value.
# List first 5 functions
import idautils
__result__ = list(idautils.Functions())[:5]# Get function name at address
import idc
__result__ = idc.get_func_name(0x401000)Development
uv sync --all-extras
uv run pytest
uv run ruff check .
uv run ruff format .
uv run pyrightProject Structure
idamcp/
├── idamcp/
│ ├── __init__.py # Package version
│ ├── bridge.py # IDA main thread execution bridge
│ ├── plugin.py # IDA plugin entry point
│ └── server.py # FastMCP server with execute_script tool
├── tests/
│ ├── test_bridge.py
│ └── test_server.py
├── install.py # Development plugin installer
├── idamcp_plugin.py # Standalone plugin entry point
└── pyproject.tomlLicense
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Enable secure connectivity between Sentry issues and debugging data, and LLM clients, using a Model Context Protocol (MCP) server.
MCP server that lets AI assistants use all OneSchema features exposed via the public API.
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP Server for Slima - AI Writing IDE for Novel Authors with AI Beta Reader.
Related MCP Servers
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables AI assistants to interact with IDA Pro for reverse engineering and binary analysis tasks.212101MIT
- AlicenseNot gradedqualityDmaintenanceEnables LLM clients like Claude to interact with IDA Pro for binary analysis, decompilation, cross-references, patching, and more via 41 MCP tools, 8 resources, and 7 guided prompts.51MIT
- AlicenseNot gradedqualityDmaintenanceConnects AI agents to IDA Pro and x64dbg for unified static and dynamic reverse engineering, enabling coordinated analysis, debugging, and patch planning through a local MCP daemon.16MIT
- AlicenseAqualityBmaintenanceExecutes IDAPython scripts in IDA Pro through any MCP-compatible AI assistant, enabling AI-powered binary analysis with full access to IDA's API.551MIT