MeroZemory/ida-multi-mcp

Multi-instance IDA Pro MCP server — analyze multiple binaries simultaneously through a single MCP endpoint.

What it solves

ida-multi-mcp allows AI agents to reverse-engineer multiple binaries simultaneously through a single Model Context Protocol (MCP) endpoint. It eliminates the need for per-binary client configuration and prevents AI agents from providing incomplete answers by gating tools behind IDA Pro's auto-analysis process.

How it works

The project implements a router that sits between an MCP client (like Claude Code or Cursor) and multiple IDA Pro processes.

  • Discovery: An IDA plugin registers each open database into a shared JSON registry file. The router then discovers these instances dynamically.
  • Routing: The router uses instance_id to direct requests to the correct IDA process via HTTP JSON-RPC.
  • Analysis Gating: It provides specific tools (analysis_status and analysis_wait) to ensure IDA has finished background analysis before the agent attempts to decompile or analyze functions.
  • Similarity Search: It uses Binary Code Similarity Detection (BCSD) based on MinHash, CFG structure, and optional neural embeddings to find similar functions across different binaries, even if they are stripped of symbols.
  • Headless Mode: It supports idalib for analysis without a GUI.

Who it’s for

Reverse engineers and security researchers who use IDA Pro and want to leverage AI agents to analyze complex malware chains (e.g., a dropper, payload, and C2 server) across multiple files at once.

Highlights

  • Zero-config discovery: Instances auto-register when a database is opened.
  • Cross-binary similarity: Local scoring and indexing for variant hunting and library identification.
  • Parallel execution: Requests run on a worker pool to prevent one busy IDA instance from blocking others.
  • Agent-aware gating: Warns agents when results are based on incomplete auto-analysis.
  • Local-first: All scoring, inference, and binary data stay on the local machine.

Related

  • Project
  • Project
  • Project
  • Project
  • Project