Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
pyghidra-mcp — Python コマンドライン Ghidra MCP | Kitploit
ツール/GitHubGitHub/clearbluejar/pyghidra-mcp
組み込みシステムセキュリティ静的分析コード分析リバースエンジニアリングデバッガマルウェア分析バイナリ解析学習と教育AI支援リバースエンジニアリングファームウェア解析
GitHubclearbluejar/pyghidra-mcp

pyghidra-mcp

404554511日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Python コマンドライン Ghidra MCP

リポジトリを見る

GitHub Workflow Status (with event) PyPI - Downloads

PyGhidra-MCP - Ghidra Model Context Protocol サーバー

概要

pyghidra-mcp は、堅牢なソフトウェアリバースエンジニアリング(SRE)スイートである Ghidra の完全な分析能力を、インテリジェントエージェントと LLM ベースのツール群の世界に持ち込むコマンドライン Model Context Protocol(MCP)サーバーです。 pyghidra と jpype を使用して Ghidra の ProgramAPI と FlatProgramAPI を Python に橋渡しし、その機能を Model Context Protocol 経由で公開します。

MCP は、言語モデル、開発ツール(VS Code など)、自律エージェントが構造化されたコンテキストにアクセスし、ツールを呼び出し、インテリジェントに協働することを可能にする統一インターフェースです。MCP は、強力な分析ツールと LLM エコシステムをつなぐ架け橋と考えてください。

pyghidra-mcp を使えば、Ghidra はインテリジェントなバックエンドとなり、コンテキスト豊富なクエリに応答し、深いリバースエンジニアリングタスクを自動化し、AI 支援ワークフローに統合する準備が整います。

pyghidra-mcp は現在、2 つの動作モードをサポートしています:

  • CLI 駆動の分析と自動化のための headless モード
  • --gui モード。pyghidra-mcp を通じて Ghidra を起動し、実行中の GUI とライブなプログラム状態を共有します

[!NOTE] このベータプロジェクトは活発に開発中です。フィードバック、バグ報告、機能リクエスト、コードをぜひお寄せください。

また別の Ghidra MCP なのか?

はい、オリジナルの ghidra-mcp は素晴らしいものです。しかし pyghidra-mcp は異なるアプローチを取っています:

  • 🐍 ヘッドレスファースト、GUI 対応 – 合理化された自動化のために完全に CLI 経由で実行するか、ライブな GUI ナビゲーションと編集が必要な場合は --gui で Ghidra を起動できます。
  • 🔁 自動化のために設計 – LLM、CI パイプライン、再現可能な動作を必要とするツール群との統合に最適です。
  • ✅ CI/CD フレンドリー – クライアントとサーバーの両方のセッションに対して堅牢なユニットテストと統合テストを備えて構築されています。
  • 🚀 迅速な起動 – 非同期起動により、バイナリがバックグラウンドで分析されている間もサーバーはリクエストの処理を開始できます。最小限のセットアップで高速なコマンドライン起動をサポートします。
  • 📦 プロジェクト全体の分析 – Ghidra プロジェクト内のすべてのバイナリを並行してリバースエンジニアリングできます
  • 🤖 エージェント対応 – インテリジェントなエージェント駆動ワークフローと大規模なリバースエンジニアリング自動化のために構築されています。
  • 🔍 セマンティックコード検索 – ベクトル埋め込み(ChromaDB 経由)を使用して、デコンパイルされた関数、コメント、シンボル全体にわたる高速でファジーな検索を可能にします—疑似 C の探索やエージェント駆動のトリアージに最適です。

このプロジェクトは、ローカル開発、ヘッドレス環境、テスト可能なワークフローに最適化された Python ファーストの体験を提供します。

セットアップ図

各部分の接続方法

flowchart LR
    subgraph Clients["Clients"]
        Agent["MCP host / agent"]
        Cli["pyghidra-mcp-cli"]
        User["Ghidra user"]
    end

    subgraph Process["pyghidra-mcp process"]
        Transport["streamable HTTP (recommended)<br/>stdio (local fallback)"]
        Tools["MCP tools"]
        Context["PyGhidra context"]
    end

    Project["Ghidra project<br/>.gpr / .rep"]
    Artifacts["MCP artifacts<br/>ChromaDB + GZF cache"]
    Gui["Ghidra GUI / CodeBrowser<br/>only with --gui"]

    Agent -->|"HTTP (recommended)"| Transport
    Cli -->|"HTTP only"| Transport
    Transport --> Tools
    Tools --> Context
    Context --> Project
    Context --> Artifacts
    Context -.-> Gui
    User -.-> Gui
    Gui -.-> Project

モードの選択

flowchart TD
    Start["What do you need?"]
    Start --> Headless["Agent or automation"]
    Start --> GuiNeed["Live Ghidra GUI control"]
    Start --> Terminal["Interactive terminal client"]

    Headless --> Http["pyghidra-mcp<br/>--transport streamable-http"]
    GuiNeed --> GuiMode["pyghidra-mcp --gui<br/>--transport streamable-http<br/>--project-path project.gpr"]
    Terminal --> HttpServer["Start pyghidra-mcp<br/>--transport streamable-http"]
    HttpServer --> CliMode["Run pyghidra-mcp-cli commands"]
  • Headless MCP: streamable-http を使用します。Ghidra とそのプロジェクトを単一の長時間稼働サーバーとして維持し、MCP ホストと CLI クライアントの両方で動作します。
  • GUI モード: pyghidra-mcp は Ghidra を起動し、プロジェクトを開き、同じ JVM 内で CodeBrowser を操作する追加ツールを公開します。
  • CLI クライアント: pyghidra-mcp-cli は HTTP クライアントです。まず streamable-http サーバーを起動し、その後、実行中のサーバーに対してターミナルコマンドを発行します。
  • stdio: HTTP エンドポイントに接続できない MCP ホスト専用にこれを保持します。
詳細なアーキテクチャとツールサーフェス
flowchart TD
    subgraph Clients
        Agent["LLM / MCP host"]
        Cli["pyghidra-mcp-cli"]
        Automation["scripts and CI"]
    end

    subgraph Transports
        Stdio["stdio"]
        Http["streamable-http"]
        Sse["sse legacy"]
    end

    subgraph Server["pyghidra-mcp server"]
        McpServer["MCPServer tool server"]
        Context["PyGhidra context"]
        Indexing["background analysis and Chroma indexing"]

        subgraph Tools["MCP tools"]
            Analysis["decompile, xrefs, bytes, callgraph"]
            Search["symbols, strings, code"]
            ProjectOps["import, delete, metadata, list binaries"]
            Edits["rename function, rename variable, set type, set prototype, set comment"]
            GuiOnly["GUI only: open program, goto, list open programs, set current program"]
        end
    end

    subgraph GhidraRuntime["Ghidra runtime"]
        PyGhidra["pyghidra"]
        Jpype["JPype shared JVM"]
        Project["Ghidra project"]
        Programs["program databases"]
        CodeBrowser["Ghidra GUI / CodeBrowser"]
    end

    Agent --> Http
    Automation --> Http
    Automation --> Sse
    Cli --> Http

    Stdio --> McpServer
    Http --> McpServer
    Sse --> McpServer

    McpServer --> Context
    Context --> PyGhidra
    PyGhidra --> Jpype
    Jpype --> Project
    Project --> Programs
    Context --> Indexing
    Indexing --> Search

    McpServer --> Tools
    Tools --> Context
    GuiOnly -.-> CodeBrowser
    Context -.-> CodeBrowser

目次

  • PyGhidra-MCP - Ghidra Model Context Protocol サーバー
    • 概要
    • また別の Ghidra MCP?
    • セットアップ図
      • 各部分の接続方法
      • モードの選択
    • 目次
    • はじめに
    • エージェント向けに最適化
    • CLI クライアント
      • インストール
      • CLI でのクイックスタート
    • プロジェクトの作成、管理、および既存プロジェクトのオープン
      • 新規プロジェクトの作成
        • 自己完結型プロジェクト構造
        • 基本的なプロジェクト作成
        • カスタムプロジェクト作成
        • 複数の関連プロジェクトの作成
      • 既存の Ghidra プロジェクトを開く
        • .gpr ファイルによるオープン
      • GUI モード
      • 起動時のデフォルトと大規模プロジェクト
    • 開発
      • セットアップ
      • テストと品質
    • API
      • ツール
        • バッチ操作
        • 読み取り / 解析ツール
        • プロジェクト操作
        • 編集 / 変更ツール
        • GUI 制御ツール (--gui のみ)
    • 使用方法
      • Docker でのバイナリのマッピング
      • Streamable HTTP
        • Python
        • Docker
      • Claude Code
      • Codex
      • 標準入力/出力 (stdio)
        • Python
        • Docker
      • OpenWeb-UI と MCPO での使用
        • uvx を使用する場合
        • Docker を使用する場合
      • Server-sent events (SSE)
        • Python
        • Docker
    • インスピレーション
    • コントリビューション、コミュニティ、ソースからの実行
      • コントリビューターワークフロー

はじめに

ツールをダウンロード