Labsco
MCP SERVER

GhidraMCP

by LaurieWired

Let an LLM reverse-engineer in Ghidra — decompile functions, list methods, classes, imports and exports, and rename what it works out.

Threat Intelligence & Digital Forensics
Summary
Renaming is what turns a session into progress you keep.

Read-only decompilation gives you a transcript; because this writes names back into the Ghidra database, the understanding accumulates in the project rather than in the chat log. The two-process shape is worth planning for: Ghidra must be open with the plugin enabled, and the bridge is a separate script your client launches.

What it is

Two pieces: a Ghidra plugin that runs an HTTP server inside the tool, and a Python bridge that speaks MCP to your client. Together they expose core Ghidra functionality — decompilation, symbol listing and renaming — so an assistant can work through a binary rather than being handed pasted output.

What you get
  • Binaries decompiled and analysed inside Ghidra from the conversation
  • Methods and data renamed automatically as the analysis works out what they are
  • Methods, classes, imports and exports listed
  • A configurable server address, so the bridge can point at a Ghidra instance on another host — it defaults to localhost:8080
Requirements

Ghidra installed, plus Python 3 and the MCP SDK. Download the release, install the zip through File → Install Extensions, restart Ghidra, and enable GhidraMCPPlugin under File → Configure → Developer; the HTTP server port is set under Edit → Tool Options. The client then runs `bridge_mcp_ghidra.py` with `--ghidra-server`, over stdio for Claude Desktop or with `--transport sse` for clients like Cline. Apache 2.0.