home / mcp / ida mcp server

IDA MCP Server

A Model Context Protocol server for IDA

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "mxiris-reverse-engineering-ida-mcp-server": {
      "command": "uvx",
      "args": [
        "mcp-server-ida"
      ]
    }
  }
}

You can run the IDA MCP Server to enable automated interactions with IDA databases using a Model Context Protocol client. This server exposes tools to read IDA data and automate IDA workflows via large language models, helping you build smarter analysis and automation pipelines.

How to use

Start by running the MCP server locally using one of the supported runtime methods, then point your MCP client to it using the standard server configuration you use for other MCP endpoints. You can run the server via uvx, via uv (for development or directory-based runs), or via Python if you prefer a module invocation. After the server is running, add an MCP server entry in your client configuration to connect to it. The server is designed to be used alongside a Claude-like MCP client that can issue requests to the IDA tooling exposed by the server.

Choose one of these runtime approaches to start the server:
- uvx: run the server directly with the package name, for example mcp-server-ida. This is the recommended lightweight path.
- uv: start from a local directory and specify the path to the package, then run the server by name.
- python -m mcp_server_ida: use Python’s module execution to start the server for development or testing.

Once the server is running, configure your MCP client to connect using the available entry points that match the chosen runtime.

How to install

Prerequisites you need before installing the IDA MCP Server:
- Node.js environment for uv/uvx based runs (uvx is recommended).
- Python 3.x if you plan to install and run via Python module.
- Access to an IDA installation for IDA-side plugin integration if you want to connect IDA through the server.

Install methods you can choose from below. Pick the one that matches your workflow.

UVX installation and run (recommended):
- Ensure uvx is available in your environment.
- Run the server directly with the package name: 
  - command: uvx
  - args: ["mcp-server-ida"]

This starts the IDA MCP server in standard mode and exposes the MCP interface for your client to connect to.
PIP installation (alternative):
- Install the package via Python:
  - command: python
  - args: ["-m", "mcp_server_ida"]

Then run the server as a module:
  - command: python
  - args: ["-m", "mcp_server_ida"]

This approach uses Python’s module runner to start the server.

IDA-side integration (optional): - Copy the IDA plugin file and plugin directory into your IDA Pro plugins directory so that IDA can communicate with the MCP server. Typical plugin placement locations are: - Windows: %APPDATA%\Hex-Rays\IDA Pro\plugins - Linux/macOS: $HOME/.idapro/plugins Follow the plugin installation steps to enable direct IDA interaction through the MCP server.

Configuration

Configure your MCP client to connect to the server using one of the available runtime configurations. You can use uvx, uv, or Python module invocation as shown in the examples.

Troubleshooting and debugging

If you need to debug the MCP server, you can use the MCP inspector with the appropriate runtime, for example to inspect a uvx-based server:

npx @modelcontextprotocol/inspector uvx mcp-server-ida

If you are developing locally, you can inspect logs to diagnose issues. Look for log files in your user directory under Claude logs if you are running in Claude-related contexts.

Development notes

Development workflows can test changes by running the MCP inspector or by connecting from the Claude desktop app. When testing, you can use the uvx configuration in development mode or run the Python module to exercise the server logic directly.