← all repositories
blacktop/ida-mcp-rs

Headless IDA Pro, Now Taking Orders from LLMs

A Rust MCP server that turns a licensed copy of IDA Pro into a headless reverse-engineering backend for AI agents like Claude and Cursor.

798 stars Rust Coding Assistants
ida-mcp-rs
Velocity · 7d
+3.1
★ / day
Trend
steady
star history

What it does

ida-mcp-rs is a Rust binary that sits between your AI agent and a licensed copy of IDA Pro 9.2+, exposing the disassembler’s internals through the Model Context Protocol. It lets an LLM list functions, retrieve decompilation, run IDAPython scripts, and analyze Apple’s dyld_shared_cache without anyone touching the IDA GUI. Think of it as a mechanical turk for reverse engineering: the AI asks, the server translates, and IDA Pro does the actual lifting.

The interesting bit

The README is refreshingly honest about the boring part that matters: context bloat. Seventy-one tools generate roughly a 10k token payload, so the author built granular filtering (--toolsets, --exclude-tools, --read-only) and even documented which AI clients can handle the load versus which will choke. That kind of operational self-awareness is rare in MCP wrappers.

Key highlights

  • Exposes 71 IDA Pro tools over MCP to agents like Claude Code, Cursor, Codex CLI, and Gemini CLI.
  • Runs headless against a licensed IDA Pro installation, linking to libida at runtime.
  • Supports background analysis, dyld_shared_cache inspection, and arbitrary IDAPython script execution with captured stdout/stderr.
  • Offers an HTTP/SSE worker pool that leases child processes to sidestep IDA’s single-database limitation under concurrent clients.
  • Provides toolset filtering and a read-only mode to shrink the tool list for smaller models or clients with tight function-declaration caps.

Caveats

  • Requires a paid IDA Pro license (9.3sp1 recommended); it is not a standalone disassembler.
  • Out of the box, HTTP mode uses a single shared IDA worker, so a second client opening a different binary will wait or hit a “database already open” error unless you explicitly raise --max-workers.
  • Non-standard IDA install paths on macOS, Linux, and Windows require manual environment variables (DYLD_LIBRARY_PATH, IDADIR, etc.) because the binary resolves IDA’s libraries at startup.

Verdict

Worth a look if you already own IDA Pro and want an LLM to automate triage, decompilation, or script-driven analysis. If you don’t have a Hex-Rays license, this is just a very well-documented wrapper for software you can’t run.

Frequently asked

What is blacktop/ida-mcp-rs?
A Rust MCP server that turns a licensed copy of IDA Pro into a headless reverse-engineering backend for AI agents like Claude and Cursor.
Is ida-mcp-rs open source?
Yes — blacktop/ida-mcp-rs is open source, released under the MIT license.
What language is ida-mcp-rs written in?
blacktop/ida-mcp-rs is primarily written in Rust.
How popular is ida-mcp-rs?
blacktop/ida-mcp-rs has 798 stars on GitHub and is currently holding steady.
Where can I find ida-mcp-rs?
blacktop/ida-mcp-rs is on GitHub at https://github.com/blacktop/ida-mcp-rs.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.