Ghidra MCP logo

Ghidra MCP

Connects AI tools to Ghidra for binary analysis, code changes, emulation, debugging, and batch reverse-engineering workflows.

Install Ghidra MCP

Pick your client, then add it in one click or paste the config.

SSE (Remote)
Server URL
http://127.0.0.1:8081/mcp

Remote servers are added in the app, not the config file: Customize → Connectors → Add custom connector, then paste this URL.

Overview

ghidra-mcp MCP server connects MCP-compatible AI clients to Ghidra through a GUI plugin and a Python bridge, exposing 209 tools for reverse engineering. It supports analysis and modification tasks, including renaming, typing, comments, structure creation, script execution, P-code emulation, debugger access, and data-flow analysis. GUI and headless modes, batch operations, Ghidra Server integration, and Docker deployment support different local and automated workflows. Reach for it when an AI agent needs to inspect or modify Ghidra projects rather than only read binary metadata.

Use cases

  • Analyze functions and symbols in a Ghidra project
  • Apply names, types, comments, and structures in batches
  • Emulate P-code and inspect data-flow relationships
  • Transfer function documentation across binary versions
  • Connect AI-assisted workflows to shared Ghidra repositories

Key features

  • 209 MCP tools for Ghidra analysis and modification
  • GUI plugin with Python MCP bridge
  • P-code emulation, live debugging, and PCode-graph analysis
  • Convention enforcement for names, types, and documentation
  • Batch operations with atomic transactions
  • Ghidra Server, headless, HTTP, and Docker support

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars5.9kStargazers on the source repository.
Last commitTodayMost recent push to the default branch.

How Ghidra MCP works

What ghidra-mcp does

ghidra-mcp exposes Ghidra’s reverse-engineering functions through the Model Context Protocol. Its 209 tools cover binary inspection and modification, including function and symbol work, type changes, comments, structure creation, script execution, P-code emulation, live debugger integration, and PCode-graph data-flow analysis.

The tool layer also supports workflows for documenting functions, finding orphaned code, processing many items at once, and transferring documentation between binary versions using SHA-256 function matching. Convention enforcement can automatically fix selected naming or typing patterns, warn about inconsistent changes, or reject invalid operations. Function completeness analysis provides a percentage score and identifies areas that still need documentation.

How it works

The integration has two parts: a Ghidra extension and an MCP bridge. The extension runs inside Ghidra and exposes a local connection endpoint; the bridge presents the available operations to an MCP client. In the GUI workflow, the extension is enabled in Ghidra’s project settings, then the bridge is registered as a command in the client’s MCP configuration.

Ghidra can be used with or without its graphical interface. The project also supports HTTP transports, Docker-based deployment, and connections to shared Ghidra Server repositories. Batch operations reduce the number of API calls needed for multi-item work, while atomic transactions and configurable timeouts help control changes and failures.

Setup and configuration

The release installation requires Ghidra 12.1.4, Java 21, and uv. The extension must match the Ghidra version for which it was built. Download the extension ZIP and Python wheel from the same release, install the extension through Ghidra’s File > Install Extensions dialog, restart Ghidra, and enable GhidraMCPPlugin under the Utility configuration.

After enabling the plugin, verify the local connection at http://127.0.0.1:8089/check_connection. Install the bridge with uv tool install, then configure the MCP client with the absolute path to bridge-mcp-ghidra or its Windows executable. GUI-launched clients may not inherit the shell’s PATH, so using only the command name can result in a process-spawn error.

Tagged releases are intended for stable use. Release candidates and the main branch are beta, while dev is experimental and may change its tool interface.

Tools and capabilities

  • Inspect and modify functions, symbols, types, comments, and structures.
  • Execute Ghidra scripts through MCP tools.
  • Run P-code emulation and analyze PCode-graph data flow.
  • Integrate with the live debugger.
  • Apply batch operations across multiple analysis targets.
  • Transfer function documentation between binary versions with SHA-256 matching.
  • Connect to Ghidra Server repositories and support checkout, check-in, version control, and collaboration workflows.
  • Enforce naming, typing, and documentation conventions at the tool layer.
  • Run analysis through GUI, headless, HTTP, or Docker-oriented deployments.

Limitations and notes

The extension is tied to the exact Ghidra version it was built for, so upgrading Ghidra may require a matching extension release. The stable installation path uses released extension and bridge artifacts; beta and development versions can change their tool shapes before release. The MCP client must be able to launch the bridge using its configured absolute executable path, particularly when the client runs outside an interactive shell.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Ghidra MCP

ghidra-mcp is an MCP server that connects AI clients to Ghidra through a GUI plugin and Python bridge. Its 209 tools support binary analysis and modification, including functions, symbols, types, comments, structures, scripts, P-code emulation, live debugging, and PCode-graph data-flow analysis.

Install the matching Ghidra extension and Python bridge from a tagged release. Use Ghidra’s Install Extensions dialog, enable GhidraMCPPlugin, install the bridge with uv, and register the bridge executable’s absolute path in the MCP client.

The documented release setup requires Ghidra 12.1.4, Java 21, and uv. The extension must match the exact Ghidra version it was built for, so use a corresponding release rather than mixing versions.

Query `http://127.0.0.1:8089/check_connection` after enabling the plugin. A working connection returns a JSON response containing an `ok` status, the server kind, and the plugin version.

Yes, ghidra-mcp supports headless operation as well as the GUI workflow. It also supports HTTP transports and Docker-oriented deployment for automated analysis workflows.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewGhidra MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/ghidra-mcp?style=directory)](https://allmcps.com/mcp/ghidra-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/ghidra-mcp"><img src="https://allmcps.com/api/badge/ghidra-mcp?style=directory" alt="Ghidra MCP on AllMCPs" /></a>