Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

headless-ida-mcp-server

MCP.Pizza Chef: cnitlrt

The headless-ida-mcp-server leverages IDA Pro's headless mode to analyze binary files programmatically. It exposes a suite of tools via the Model Context Protocol (MCP) to manage and manipulate functions, variables, and other binary analysis artifacts. Designed as a CLI app, it enables automated, scriptable binary analysis workflows without interactive IDA GUI usage, ideal for integration into larger AI-driven reverse engineering pipelines.

Use This MCP server To

Automate binary file analysis using IDA Pro headless mode Manage and manipulate functions and variables in binaries Integrate binary analysis into AI-enhanced reverse engineering workflows Run IDA Pro analysis as a CLI tool without GUI interaction Expose binary analysis data via MCP for LLM-driven tooling Script complex multi-step binary inspection and modification tasks

README

Acknowledgments

This project builds upon the work of:

Headless IDA MCP Server

If you want to run the server directly as a cli app, rather than an IDA plugin interactively,you can chose it.

Project Description

This project uses IDA Pro's headless mode to analyze binary files and provides a suite of tools via MCP to manage and manipulate functions, variables, and more.

Prerequisites

Installation

  1. Clone the project locally:

    git clone https://github.com/cnitlrt/headless-ida-mcp-server.git 
    cd headless-ida-mcp-server
  2. Install dependencies:

    uv python install 3.12
    uv venv --python 3.12
    uv pip install -e .

Configuration

  1. Copy the example environment file:

    cp .env_example .env
  2. Configure the following environment variables in .env:

    • IDA_PATH: Path to IDA Pro's headless executable (idat), e.g., /home/ubuntu/idapro/idat
    • PORT: Port number for the MCP server, e.g., 8888
    • HOST: Host address for the MCP server, e.g., 127.0.0.1
    • TRANSPORT: MCP transport mode (sse or stdio)

Usage

  1. Start the server:

    uv run headless_ida_mcp_server
  2. Connect to the server using an MCP client:

    Debug it:

    npx -y @modelcontextprotocol/inspector

    or

    {
    "mcpServers": {
       "ida": {
          "command": "/path/to/uv",
          "args": ["--directory","path/to/headless-ida-mcp-server","run","headless_ida_mcp_server"]
       }
    }
    }

headless-ida-mcp-server FAQ

How do I install the headless-ida-mcp-server?
Clone the GitHub repo, set up Python 3.12 environment, and install dependencies with pip.
What prerequisites are required to run this MCP server?
You need Python 3.12+ and IDA Pro with headless support (idat) installed.
Can I use this server without the IDA GUI?
Yes, it runs in headless mode as a CLI app, no GUI needed.
How does this server integrate with LLMs?
It exposes binary analysis tools via MCP, enabling LLMs like OpenAI, Claude, and Gemini to query and manipulate binaries.
Is this server suitable for automated reverse engineering pipelines?
Yes, it is designed for scriptable, automated binary analysis workflows.
What programming language is required to interact with this server?
Python 3.12 or higher is required for installation and interaction.
Can I extend the server with custom analysis tools?
Yes, the MCP framework allows adding new tools and data sources for extended functionality.
Where can I find the source code and documentation?
The project is hosted on GitHub at https://github.com/cnitlrt/headless-ida-mcp-server.