Official · MODEL CONTEXT PROTOCOL

fdrechsler mcp server idapro

A Model Context Protocol (MCP) server that enables AI assistants to interact with IDA Pro for reverse engineering and binary analysis tasks.

WHAT IT CONNECTS

fdrechsler mcp server idapro 为 AI Agent 提供什么

  • Execute Python scripts in IDA Pro from AI assistants
  • Retrieve information about binaries:
  • Strings
  • Imports
  • Exports
  • Functions
  • Advanced binary analysis capabilities:
  • Search for immediate values in instructions
  • Search for text strings in the binary
  • Search for specific byte sequences
  • Get disassembly for address ranges
  • Automate IDA Pro operations through a standardized interface
  • Secure communication between components
  • IDA Pro 8.3 or later
  • Node.js 18 or later
  • TypeScript
  • Copy `ida_remote_server.py` to your IDA Pro plugins directory:
  • Windows: `%PROGRAMFILES%\IDA Pro\plugins`
  • macOS: `/Applications/IDA Pro.app/Contents/MacOS/plugins`
  • Linux: `/opt/idapro/plugins`
  • Start IDA Pro and open a binary file.
  • The plugin will automatically start an HTTP server on `127.0.0.1:9045`.
  • Clone this repository:
  • Install dependencies:
  • Build the project:
  • Configure the MCP server in your AI assistant's MCP settings file:
  • `scriptPath` (required): Absolute path to the script file to execute
  • `outputPath` (optional): Absolute path to save the script's output to
  • `value` (required): Value to search for (number or string)
  • `radix` (optional): Radix for number conversion (default: 16)
  • `startAddress` (optional): Start address for search
  • `endAddress` (optional): End address for search
  • `text` (required): Text to search for
  • `caseSensitive` (optional): Whether the search is case sensitive (default: false)
  • `startAddress` (optional): Start address for search
  • `endAddress` (optional): End address for search
  • `bytes` (required): Byte sequence to search for (e.g., "90 90 90" for three NOPs)
  • `startAddress` (optional): Start address for search
  • `endAddress` (optional): End address for search
  • `startAddress` (required): Start address for disassembly
  • `endAddress` (optional): End address for disassembly
  • `count` (optional): Number of instructions to disassemble
  • None required
  • None required
  • None required
  • `GET /api/info`: Get plugin information
  • `GET /api/strings`: Get strings from the binary
  • `GET /api/exports`: Get exports from the binary
  • `GET /api/imports`: Get imports from the binary
  • `GET /api/functions`: Get function list
  • `GET /api/search/immediate`: Search for immediate values in instructions
  • `GET /api/search/text`: Search for text in the binary
  • `GET /api/search/bytes`: Search for byte sequences in the binary
  • `GET /api/disassembly`: Get disassembly for an address range
  • `POST /api/execute`: Execute Python script (JSON/Form)
  • `POST /api/executebypath`: Execute Python script from file path
  • `POST /api/executebody`: Execute Python script from raw body

SECURITY

MCP 收录不等于安全审核

MCP 服务器可能获得模型上下文、凭据、本地文件或调用外部系统的权限。连接 Agent 前,请检查代码、环境变量、网络行为、软件包来源与维护状态。