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.

コメント

「その他」の他のコンテンツ