Discover and explore top open-source AI tools and projects—updated daily.
bethingtonAI-powered reverse engineering framework for Ghidra
Top 20.9% on SourcePulse
Summary
Ghidra MCP Server addresses the challenges of inconsistent reverse engineering practices and integration with AI tools by providing a comprehensive Model Context Protocol (MCP) server. It offers over 244 MCP tools, enabling AI agents and human engineers to perform complex reverse engineering tasks with enhanced consistency and efficiency. The project targets reverse engineers, security researchers, and developers seeking to automate and scale Ghidra-based analysis, offering benefits like standardized workflows, improved code quality through convention enforcement, and seamless integration with modern AI frameworks.
How It Works
The system comprises a Python MCP Bridge (bridge_mcp_ghidra.py), a Ghidra plugin (GhidraMCP.jar), and an optional headless server. AI tools communicate with the bridge via the MCP protocol (stdio or HTTP), which then translates requests into Ghidra API calls through the plugin. This architecture leverages Ghidra's powerful analysis capabilities, extending them with features like P-code emulation, live debugger integration, and data flow analysis. A key design choice is enforcing naming and typing conventions directly within the tool layer, ensuring consistent output across different models and sessions without manual prompt engineering.
Quick Start & Requirements
python -m tools.setup ensure-prereqs --ghidra-path <path/to/ghidra>, python -m tools.setup build, and python -m tools.setup deploy --ghidra-path <path/to/ghidra>.Highlighted Details
Maintenance & Community
The project is actively maintained, with core contributors listed as @heeen and @huehuehuehueing. Sponsorship is encouraged to fund compatibility updates, production hardening, documentation, and new tooling. Community interaction primarily occurs through the GitHub repository.
Licensing & Compatibility
Limitations & Caveats
The default configuration binds the HTTP server to 127.0.0.1 without authentication, suitable for single-user workstations. Exposing the server beyond localhost requires configuring environment variables like GHIDRA_MCP_AUTH_TOKEN for security. Script execution endpoints are disabled by default as of v5.4.1 due to security risks. Ghidra 12.1 no longer enables Jython by default, requiring manual installation of the Jython extension for .py scripts.
3 days ago
Inactive