mcp-server-idapro

MCP.Pizza Chef: fdrechsler

Twelve commands sit on top of a running copy of IDA Pro: listing functions and exports, pulling out readable text, disassembling an address range, tracing cross-references, and running scripts inside the tool. Be warned that it does not build as published — an unused import of a package that was never listed stops the compiler — and one advertised command is wired to nothing. Text search no longer looks at the program at all; it queries a database the project never creates. Nothing has changed since March 2025.

Unmaintained · No commits in 18 months.
Coding

Use This MCP server To

List every function in a program I am examining Show me the assembly at a particular address Find out what calls a suspicious function Pull the readable text out of a compiled program Run a short analysis script inside my disassembler

README

IDA Pro MCP Server

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

IDA Pro Server MCP server

Overview

This project provides a bridge between AI assistants and IDA Pro, a popular disassembler and debugger used for reverse engineering software. It consists of three main components:

  1. IDA Pro Remote Control Plugin (ida_remote_server.py): An IDA Pro plugin that creates an HTTP server to remotely control IDA Pro functions.
  2. IDA Remote Client (idaremoteclient.ts): A TypeScript client for interacting with the IDA Pro Remote Control Server.
  3. MCP Server (index.ts): A Model Context Protocol server that exposes IDA Pro functionality to AI assistants.

Features

  • 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

Prerequisites

  • IDA Pro 8.3 or later
  • Node.js 18 or later
  • TypeScript

Example usage ida_remote_server.py

curl -X POST -H "Content-Type: application/json" -d '{"script":"print(\"Script initialization...\")"}' http://127.0.0.1:9045/api/execute
{"success": true, "output": "Script initialization...\n"}

mcp-server-idapro FAQ

Will it build and run as published?
No. The build stops on an import of a package that was never added to the project. Deleting that one unused line fixes it, but nothing tells you that.
Do I need to buy anything?
Yes. It only does anything alongside IDA Pro 8.3 or later, which is commercial software, and you also need Node 18 and a build step.
Do I need a key or an account?
Neither. Everything talks to the copy of IDA Pro already running on your own machine.
Can I use this to understand a program I have no source code for?
Yes, that is the whole point — you can ask for functions, text, and assembly and have them explained in conversation, once you get it building.
Does the text search work?
Not as described. The code that searched the program is commented out and replaced by a lookup against a MongoDB database that nothing in the project sets up or fills, so it errors or comes back empty.
Are the documented settings accurate?
No. The main script command takes the script text itself, not the file paths the write-up shows, and the case-sensitivity and address-range settings on text search are accepted and then ignored.
Is it safe to leave running?
Treat it with care. The companion plug-in opens an unprotected local service that will run any Python handed to it inside IDA Pro, so any other program on your machine can drive it. The project's claim of secure communication is not backed by any password or encryption.
Is it maintained?
No code changes since March 2025.