Headless IDA MCP Server logo

Headless IDA MCP Server

by MCP-Mirror

Headless IDA MCP Server is a server project based on IDA Pro, designed to provide remote analysis and management capabilities through the Multi-Client Protocol (MCP). It utilizes IDA Pro's headless mode to analyze binary files and offers tools to manage functions and variables.

View on GitHub

Last updated: N/A

Acknowledgments

This project builds upon the work of:

Headless IDA MCP Server

Headless IDA MCP Server is a headless server project based on IDA Pro, designed to provide remote analysis and management capabilities through the Multi-Client Protocol (MCP).

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

  • Python 3.10 or higher
  • IDA Pro with headless support (idat) https://github.com/DennyDai/headless-ida

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 venv 
    source .venv/bin/activate
    uv pip install .
    

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
    • BINARY_PATH: Path to the binary file for analysis, e.g., ./test/main
    • 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:

    npx -y @modelcontextprotocol/inspector