mcpField
J
Jadx Mcp Plugin

Jadx Mcp Plugin

ローカル
github.com/mobilehackinglab開発ツール10538 週間前に更新

Jadx Mcp Plugin について

Jadx MCP Plugin は、Jadx API を HTTP 経由で公開する Jadx プラグインです。Python の FastMCP アダプターが Claude などの MCP クライアントと接続します。Android アプリをAIで支援しながら解析したいリバースエンジニアリング担当者に向けたプロジェクトです。

主な機能

  1. 01Jadx API の HTTP 公開
  2. 02FastMCP アダプターによる MCP クライアント接続
  3. 03クラス一覧表示とソース取得
  4. 04メンバーの確認
  5. 05個別メソッドの逆コンパイルコード抽出

活用シーン

  1. 01Claude から APK や DEX の逆コンパイル済みクラスを参照
  2. 02クラス名やメソッド名の検索による解析対象の特定
  3. 03セキュリティレビュー用のメソッドコード抽出

MCP 対応

本プロジェクトは MCP サーバーです。FastMCP アダプターが list_all_classes、get_class_source、get_method_code などの 7 つのツールを Claude などの MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

⚙️ Jadx MCP プラグイン — MCP 経由で Claude から逆コンパイラーにアクセス

このプロジェクトでは、Java で記述された Jadx プラグインを提供しています。このプラグインは Jadx API を HTTP 経由で公開し、Model Context Protocol (MCP) を通じて、Claude などの MCP クライアントからリアルタイムに操作できるようにします。Python 製の軽量な FastMCP アダプターが、Claude とプラグインの橋渡しをします。これにより、リバースエンジニアリングのワークフローをインテリジェントにナビゲートして自動化でき、Android アプリの AI 支援セキュリティ分析に最適です。


🧰 セットアップ手順
# Clone this repository
git clone https://github.com/mobilehackinglab/jadx-mcp-plugin.git
cd jadx-mcp-plugin

# Create and activate a virtual environment
python3 -m venv venv

# Activate:
source venv/bin/activate      # Linux/Mac
.\venv\Scripts\activate       # Windows
Python の依存関係をインストール
pip install -r requirements.txt 
🧠 Claude MCP クライアント連携のセットアップ

Claude Desktop でこのアダプターを使用するには、File -> Settings -> Developer -> Edit Config -> claude_desktop_config.json の順に移動し、以下の例に従って、仮想環境内の Python 実行ファイル(依存関係の問題を防ぐため)とアダプターの完全なパスを指定する MCP サーバーを追加します。

Windows:

{
  "mcpServers": {
    "Jadx MCP Server": {
      "command": "C:\\Workset\\jadx-mcp-plugin\\venv\\Scripts\\python.exe",
      "args": ["C:\\Workset\\jadx-mcp-plugin\\fastmcp_adapter.py"]
    }
  }
}

MacOS / Linux:

{
  "mcpServers": {
    "Jadx MCP Server": {
      "command": "/Users/yourname/jadx-mcp-plugin/venv/bin/python",
      "args": ["/Users/yourname/jadx-mcp-plugin/fastmcp_adapter.py"]
    }
  }
}

設定を編集した後、Claude を再起動(終了)してください。 再起動後、次のように表示されます。 README の画像

✅ 使用の流れ
  1. リリースから最新のプラグイン JAR を入手して plugins/ フォルダーに配置するか、Plugins -> install plugin から読み込み、Jadx を起動します。

  2. APK または DEX ファイルを読み込みます

  3. (任意)次のコマンドで Jadx を起動し、HTTP インターフェースのアドレスを指定できます。

    jadx-gui -Pjadx-mcp.http-interface=http://localhost:8085
    

    これは、デフォルトのホスト/ポート(http://localhost:8085)を変更したい場合に便利です。

    注: ここでインターフェースのアドレスを変更した場合は、fastmcp_adapter.py 内の対応する URL も一致するように更新してください。

  4. Claude が Jadx MCP サーバーのツールを検出して有効化します。

  5. クラスの一覧表示、ソースの取得、メソッド/フィールドの調査、コードのリアルタイム抽出ができるようになります。


🧪 提供されるツール

ツール説明
list_all_classesすべての逆コンパイル済みクラス名を取得
search_class_by_name文字列に一致するクラスを検索
get_class_source指定したクラスのソース全体を取得
search_method_by_name文字列に一致するメソッドを検索
get_methods_of_classクラス内のすべてのメソッド名を一覧表示
get_fields_of_classクラス内のすべてのフィールド名を一覧表示
get_method_codeメソッドの逆コンパイル済みコードを抽出

🛠 開発

☕ Java プラグイン

Java プラグインの場所:

plugin/src/main/java/com/mobilehackinglab/jadxplugin/McpPlugin.java

JadxPlugin API(jadx.api.*)を使用して、次の処理を行います。

  • 逆コンパイル済みのクラスとメソッドを読み込む
  • 組み込み HTTP サーバー経由で構造化データを提供する
  • /invoke および /tools エンドポイントに応答する
🚀 Gradle タスクによる自動インストール

次の Gradle タスクを使うと、プラグインのビルドとインストールを一度に実行できます。

./gradlew installPlugin

これは jadx plugins CLI を使用します。Jadx がインストールされ、PATH から利用できることを確認してください。

アンインストール、有効化/無効化など、その他のプラグイン関連タスクについては、plugin/build.gradle のタスク定義を参照してください。

🔧 手動インストール

プラグインをビルドするには:

./gradlew build
# Output: plugin/build/libs/jadx-mcp-plugin-<version>.jar

jadx plugins CLI を使用してプラグイン JAR をインストールします。

jadx plugins --install-jar path/to/jadx-mcp-plugin-<version>.jar

または、ビルドした .jar ファイルを Jadx の plugins/ フォルダーに配置します。通常の場所は ~/.jadx/plugins/ です。

JAR を手動で配置した場合は、Jadx の GUI から、または次のコマンドを実行してプラグインを有効にする必要があります。

jadx plugins --enable jadx-mcp

Python FastMCP アダプター

アダプターファイルの場所:

fastmcp_adapter.py

このアダプターは、Claude の MCP ツール呼び出しを、実行中の Jadx プラグインサーバーへの HTTP POST リクエストに変換します。Claude を起動する前に Jadx を開いてください。


🤝 貢献

PR、機能リクエスト、ツールの拡張を歓迎します!
このプロジェクトは Mobile Hacking Lab がメンテナンスしています。


🧩 クレジット

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。