官方说明☕ 🏠 - A Model Context Protocol server for Ghidra that enables LLMs to autonomously reverse engineer applications. Provides tools for decompiling binaries, renaming methods and data, and listing method
ghidraMCP is an Model Context Protocol server for allowing LLMs to autonomously reverse engineer applications. It exposes numerous tools from core Ghidra functionality to MCP clients. https://github.com/user-attachments/assets/36080514-f227-44bd-af84-78e29ee1d7f9 Features MCP Server + Ghidra Plugin - Decompile and analyze binaries in Ghidra - Automatically rename methods and data - List methods, classes, imports, and exports Installation Prerequisites - Install Ghidra 12.1.4 - Install uv (or Python 3.10+ with pip install git+https://github.com/LaurieWired/GhidraMCP, then use ghidra-mcp as the command below) Ghidra First, download the latest release from this repository. This contains the Ghidra plugin and Python MCP client. Then, you can directly import the plugin into Ghidra. 1. Run Ghidra 2. Select File -> Install Extensions 3. Click the + button 4. Select the ghidra_12.1.4_PUBLIC_ _GhidraMCP.zip from the downloaded release 5. Restart Ghidra 6. Make sure the GhidraMCPPlugin is enabled in File -> Configure -> Developer 7. *Optional*: Configure the port in Ghidra with Edit -> Tool Options -> GhidraMCP HTTP Server Video Installation Guide: https://github.com/user-attachments/assets/75f0c176-6da1-48dc-ad96-c182eb4648c3 MCP Clients Theoretically, any MCP client should work with ghidraMCP. Most clients accept a JSON config like the following: The server IP and port are configurable and should be set to point to the target Ghidra instance. If not set, both will default to localhost:8080. For clients that connect to a URL instead of launching a command, first run the MCP server yourself: Then add http://127.0.0.1:8081/mcp as a remote server in your client. Example 1: VS Code Run MCP: Add Server from the Command Palette, or add the following to .vscode/mcp.json in your workspace: Example 2: Claude Code Run the following command: Headless (no Ghidra GUI) ghidra-mcp can also import and analyze a binary itself using PyGhidra, with no Ghidra GUI running. This needs Python 3.10–3.13, the GhidraMCP extension installed in Ghidra (or --extension-jar /path/to/GhidraMCP.jar), and GHIDRA_INSTALL_DIR set to your Ghidra 12.1.4 directory: Use the same command and arguments in any of the client configs above. Add --project DIR to keep the Ghidra project (and save changes) between runs. On macOS, build Ghidra's decompiler once with support/gradle/gradlew buildNatives from the Ghidra directory.