MCP.so
登录

🔍 Ghidra MCP Server

@Bamimore-Tomi

关于 🔍 Ghidra MCP Server

Ghidra MCP server that extracts decompiled binary context and exposes it to LLMs via Model Context Protocol.

基本信息

分类

其他

运行时

python

传输方式

stdio

发布者

Bamimore-Tomi

配置

暂无标准配置

该服务器的 README 中没有可解析的 MCP 配置块,请前往代码仓库查看安装说明。

代码仓库

工具

未检测到工具

工具是从 README 中自动提取的。维护者可以在 ## Tools 标题下列出工具,即可填充这部分内容。

概览

What is 🔍 Ghidra MCP Server?

🔍 Ghidra MCP Server lets you use Ghidra in headless mode to extract rich binary analysis data (functions, pseudocode, structs, enums, etc.) into a JSON file and expose it to LLMs like Claude via the Model Context Protocol (MCP). It turns Ghidra into an interactive reverse‑engineering backend for AI‑assisted analysis.

How to use 🔍 Ghidra MCP Server?

Install Java 21, Ghidra 11.3.1+, and Python 3.10+. Clone the project, then register the server with mcp install main.py. For testing, use mcp dev main.py. To connect with Claude Desktop, update its configuration file (claude_desktop_config.json) to point to the uv binary and the project’s main.py.

Key features of 🔍 Ghidra MCP Server

  • Decompiles a binary using Ghidra headless mode
  • Extracts function pseudocode, names, parameters, variables, strings, comments
  • Extracts data structures (structs), enums, and function definitions
  • Outputs all extracted data to ghidra_context.json
  • MCP server exposes tools like list_functions(), get_pseudocode(name), list_structures(), get_structure(name), list_enums(), get_enum(name), list_function_definitions(), and get_function_definition(name)
  • Designed to integrate with AI assistants for interactive reverse engineering

Use cases of 🔍 Ghidra MCP Server

  • Reverse‑engineer unknown binaries with the help of an LLM
  • Automatically generate pseudocode summaries and documentation for binary analysis
  • Analyze malware or legacy code in a headless, scriptable workflow
  • Combine Ghidra’s static analysis with natural‑language questions about decompiled output

FAQ from 🔍 Ghidra MCP Server

What Java version is required?

Ghidra 11.3.1 requires Java 21 (Temurin preferred). Using an older or newer version may cause an “unsupported Java version” error.

Why does Claude Desktop fail with “spawn uv ENOENT”?

Claude cannot locate the uv binary by name. You must set the full absolute path to uv (found via which uv) in the claude_desktop_config.json file.

Does the server support Windows or Linux?

The README only lists macOS as tested. No explicit support for other platforms is documented.

Where is the extracted analysis data stored?

The Ghidra script outputs all extracted data to a file named ghidra_context.json in the project directory.

How do I register the MCP server with a client?

Use the MCP CLI command mcp install main.py to register the server, or manually configure your client (e.g., Claude Desktop) with the command to run main.py via uv.

评论

其他 分类下的更多 MCP 服务器