-
Notifications
You must be signed in to change notification settings - Fork 0
Ghidra MCP Server
Ghidra MCP Server adds MCP tooling for AI-assisted reverse engineering workflows in Ghidra.
This is a very active project, so always remember to validate against the official GitHub repository for the latest installation instructions.
Note
These instructions target the latest Ghidra MCP Server release at the time of writing: 5.14.1.
If you are reading this at a later date, please confirm the installation steps against the official documentation on the GitHub repository.
Run these commands after installing both the Python tooling and Ghidra:
# Update package lists, if necessary:
sudo apt update --assume-yes
# Install prerequisites for Ghidra MCP Server:
sudo apt install --assume-yes \
ddd \
jq \
maven
# Clone the Ghidra MCP Server repository:
mkdir --parents "$HOME/src/bethington"
git clone \
--depth=1 \
--single-branch \
https://github.com/bethington/ghidra-mcp.git \
"$HOME/src/bethington/ghidra-mcp"
cd "$HOME/src/bethington/ghidra-mcp"
# Create an isolated Python environment for Ghidra MCP Server dependencies:
/usr/bin/python3 <<'PYTHON'
import venv
venv.create(".venv", with_pip=True)
PYTHON
.venv/bin/pip install --upgrade \
pip \
setuptools \
wheel
# Validate prerequisites, build the plugin, and deploy it into Ghidra:
# 1. Environment Preflight:
.venv/bin/python -m tools.setup preflight --ghidra-path "$GHIDRA_HOME"
# 2. Build the plugin and deploy it into Ghidra:
.venv/bin/python -m tools.setup ensure-prereqs --ghidra-path "$GHIDRA_HOME"
.venv/bin/python -m tools.setup build
.venv/bin/python -m tools.setup deploy --ghidra-path "$GHIDRA_HOME"Note
Modern Ubuntu releases flag /usr/bin/python3 as externally managed, so pip install <pkg> and pip install --user <pkg> will refuse to modify it.
Install Python packages inside .venv instead; ensuring they are isolated from apt-managed packages and allow pip to work normally.