IDA Pro MCP Server
IDA Pro MCP 服务器,用于 Claude Code
桥接 Claude Code(CLI 和编辑器扩展,如 VS Code、Cursor、Windsurf)与 IDA Pro 9.0+,实现 AI 辅助逆向工程。87 个工具,几乎涵盖 IDA Pro 的所有功能。
架构
Claude Code / Cursor / VS Code (MCP Client)
│ (stdio)
▼
ida-mcp Server
│ (JSON-RPC over localhost:13337)
▼
IDA Pro Plugin (ida_mcp_plugin.py)
│ (IDAPython API on main thread)
▼
IDA Pro 9.0+安装与设置
1. 安装 IDA 插件
将 ida_plugin/ida_mcp_plugin.py 复制到你的 IDA Pro plugins 目录:
macOS:
~/idapro-9.0/plugins/或/Applications/IDA Professional 9.0.app/Contents/MacOS/plugins/Windows:
%APPDATA%\Hex-Rays\IDA Pro\plugins\或C:\Program Files\IDA Professional 9.0\plugins\Linux:
~/.idapro/plugins/或/opt/idapro-9.0/plugins/
当你在 IDA Pro 中打开任意二进制文件时,插件会在 127.0.0.1:13337 上启动一个 JSON-RPC 服务器。
2. 配置 Claude Code CLI
claude mcp add ida-pro -- uv run --directory "/Users/benzi/Documents/IDA MCP" ida-mcp3. 配置 VS Code / Cursor / Windsurf
添加到 .mcp.json 或你的编辑器的 MCP 配置中:
{
"mcpServers": {
"ida-pro": {
"command": "uv",
"args": ["run", "--directory", "/Users/benzi/Documents/IDA MCP", "ida-mcp"]
}
}
}环境变量
IDA_MCP_HOST— 覆盖主机(默认:127.0.0.1)IDA_MCP_PORT— 覆盖端口(默认:13337)
可用工具(共 87 个)
分析(4 个)
工具 | 描述 |
| Hex-Rays C 伪代码反编译 |
| 函数的完整汇编列表 |
| 两个地址之间的汇编代码 |
| 从地址读取原始十六进制字节 |
导航与发现(14 个)
工具 | 描述 |
| 列出所有函数,可带可选过滤器 |
| 详细的函数元数据 |
| 内存段及其权限 |
| 指向某个地址的交叉引用 |
| 从某个地址出发的交叉引用 |
| 已定义的字符串,可带可选过滤器 |
| 按模块列出的导入函数 |
| 导出函数和入口点 |
| 结构体、联合体、成员布局 |
| 枚举及其值 |
| 创建新的结构体类型 |
| 调用目标函数的函数(含调用点) |
| 被目标函数调用的函数 |
| 在地址处定义 C 风格字符串 |
内省(14 个)
工具 | 描述 |
| 控制流图——基本块及其前驱/后继 |
| 读取地址处的注释 |
| 读取函数内的所有注释 |
| 读取函数级注释 |
| 设置函数级注释 |
| 完整的栈帧布局(局部变量、参数、保存的寄存器) |
| 更改操作数显示方式(十六进制/十进制/二进制/字符) |
| 在反编译中重新指定局部变量的类型 |
| 获取指令/函数/段的颜色 |
| 设置指令/函数/段的颜色(RGB) |
| 对函数字节进行哈希(MD5/SHA1/SHA256) |
| 检测函数中的 try/catch/throw |
| 任意成熟度级别的 Hex-Rays 中间表示 |
修改(7 个)
工具 | 描述 |
| 重命名函数 |
| 重命名标签、变量或地址 |
| 设置普通或可重复注释 |
| 设置 C 函数签名/原型 |
| 在地址处设置类型 |
| 重命名局部变量(Hex-Rays) |
| 在调用点应用类型 |
搜索(2 个)
工具 | 描述 |
| 在反汇编中搜索文本 |
| 搜索字节模式/签名 |
调试器(17 个)
工具 | 描述 |
| 开始调试二进制文件 |
| 检查调试器活动/挂起状态 |
| 设置软件断点 |
| 移除断点 |
| 列出所有断点 |
| 启用/禁用断点 |
| 单步进入下一条指令 |
| 单步跳过下一条指令 |
| 继续执行直到下一个断点 |
| 暂停执行 |
| 终止进程 |
| 读取 CPU 寄存器 |
| 从被调试进程读取内存(十六进制转储,带 ASCII) |
| 调用栈跟踪 |
| 列出所有进程线程 |
| 切换活动调试线程 |
| 设置硬件监视点(读/写/执行) |
高级(14 个)
工具 | 描述 |
| 在 IDA 数据库中修补字节 |
| 运行任意 IDAPython 代码 |
| 加载 .til 类型信息库 |
| 列出已加载的 TIL |
| 将字节转换为代码(指令) |
| 将字节转换为带类型的数据 |
| 恢复为原始未定义字节 |
| 在地址范围内创建函数 |
| 删除函数定义 |
| 添加持久书签 |
| 列出所有书签 |
| 移除书签 |
| 列出局部变量和参数 |
| 列出命名的全局数据变量 |
数据库与导出(12 个)
工具 | 描述 |
| 保存 IDA 数据库 |
| 应用 FLIRT .sig 进行库识别 |
| 列出已应用的 FLIRT 签名 |
| 创建新的内存段 |
| 删除段定义 |
| 更改段 rwx 权限 |
| 定义带类型的数组 |
| 将 IDA 光标跳转到地址 |
| 导出干净的汇编列表 |
| 导出干净的 C 伪代码 |
| 执行 IDC 脚本代码 |
| 触发已注册的 IDA UI 动作 |
| 列出所有可用的 IDA 动作 |
元(3 个)
工具 | 描述 |
| 文件路径、架构、位数、入口点 |
| 检查自动分析完成状态 |
| 检查 IDA 连接状态 |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Live SEO workflow tools for Claude Code, Codex, and AI agents.
Garmin data in Claude: 135 tools — activities, sleep, HRV, training, workouts. Free, open source.
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/31Benzi/IDA-PRO-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server