📈 GH Trending Explorer 🎲 Surprise me

← all repos

LaurieWired / GhidraMCP

git clone https://github.com/LaurieWired/GhidraMCP.git 2.0 · 11d ago 🔥 on GitHub Trending today

MCP server and Ghidra plugin that lets LLM clients decompile binaries, rename symbols, and list functions, classes, imports, and exports.

Why you might care

Connects MCP-compatible LLM clients like VS Code and Claude Code to a running Ghidra instance so models can drive reverse-engineering tasks. Includes a headless mode via PyGhidra that analyzes a binary without the Ghidra GUI.

Categories

Alternatives

GhidraIDA ProBinary Ninja
+10
stars, 24h · #1,351
+314
stars, 7 days · #410
+1.4k
stars, 30 days · #389
11k
★ total · +3% this week
1.2k
forks · 94 open issues

Star history (as recorded here)

2026-10-20 · 11,433 ★ 2026-10-22 · 11,472 ★
LanguageJava
LicenseApache-2.0
Created2025-03-23 (1y ago)
Last push11d ago
Watchers84
OwnerUser

Seen on GitHub Trending

  • 2026-10-22 — #4 monthly in java · +1,369 ★
  • 2026-10-21 — #3 monthly in java · +1,355 ★
  • 2026-10-21 — #10 weekly in java · +265 ★
  • 2026-10-20 — #3 monthly in java · +1,339 ★
  • 2026-10-20 — #10 weekly in java · +314 ★

Links

README excerpt
# ghidraMCP
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:
 [code] 
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:
 [code] 
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:
 [code] 
## Example 2: Claude Code
Run the following command:
 [code] 
## 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:
 [code] 
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.
# Building from Source
1. Set `GHIDRA_INSTALL_DIR` to your Ghidra 12.1.4 directory
2. Build the extension with Gradle (Java 21) by running:
`cd extension && $GHIDRA_INSTALL_DIR/support/gradle/gradlew buildExtension`
The generated zip file in `extension/dist/` includes the built Ghidra plugin and its resources. These files are required for Ghidra to recognize the new extension.
- lib/GhidraMCP.jar
- extension.properties
- Module.manifest
The Python MCP server can 

Blurb generated by claude-haiku-5-5 1d ago. Star deltas marked ~ are extrapolated from partial history.