使用说明

项目简介

Jadx MCP 插件是一个桥梁,它将强大的安卓反编译工具 Jadx 的功能通过 Model Context Protocol (MCP) 协议暴露出来,使得支持 MCP 协议的 LLM 客户端,如 Claude,可以直接调用 Jadx 的能力来分析 APK 或 DEX 文件。这个插件允许用户在 LLM 环境中,像与本地工具交互一样,获取反编译代码、类列表、方法信息等,极大地增强了 LLM 在软件逆向工程和代码分析场景下的应用能力。

主要功能点

  • 类信息获取: 列出所有反编译的类名,方便快速概览代码结构。
  • 源码查看: 获取指定类的完整 Java 源代码,直接在 LLM 中阅读和分析代码逻辑。
  • 方法搜索: 根据方法名关键词搜索,快速定位目标方法。
  • 类方法/字段列表: 列出指定类中的所有方法和字段名,帮助理解类的组成结构。
  • 方法代码提取: 提取特定方法的反编译代码,专注于分析方法级别的实现细节。

安装步骤

  1. 克隆仓库

    git clone https://github.com/mobilehackinglab/jadx-mcp-plugin.git
    cd jadx-mcp-plugin
  2. 创建并激活 Python 虚拟环境

    python3 -m venv venv
    source venv/bin/activate   # Linux/Mac
    .\venv\Scripts\activate    # Windows
  3. 安装 Python 依赖

    pip install -r requirements.txt
  4. 构建 Jadx 插件

    ./gradlew build
    # 插件 JAR 文件位于 plugin/build/libs/jadx-mcp-plugin-<version>-all.jar
  5. 安装 Jadx 插件

    • 将 'plugin/build/libs/jadx-mcp-plugin-<version>-all.jar' 复制到 Jadx 安装目录下的 'plugins/' 文件夹中。
    • 或者,启动 Jadx 后,通过 "Plugins" -> "install plugin" 从本地加载插件 JAR 文件。

服务器配置

要让 Claude 客户端连接到 Jadx MCP 服务器,需要在 Claude 的配置文件 'claude_desktop_config.json' 中添加 MCP 服务器配置。

配置文件路径:

  • 'File' -> 'Settings' -> 'Developer' -> 'Edit Config'

配置示例 (Windows):

{
  "mcpServers": {
    "Jadx MCP Server": {  // MCP 服务器名称,Claude 中会显示
      "command": "C:\\Workset\\jadx-mcp-plugin\\venv\\Scripts\\python.exe", // Python 解释器路径 (虚拟环境中的 python)
      "args": ["C:\\Workset\\jadx-mcp-plugin\\fastmcp_adapter.py"] // FastMCP 适配器脚本路径
    }
  }
}

配置示例 (MacOS / Linux):

{
  "mcpServers": {
    "Jadx MCP Server": {  // MCP 服务器名称,Claude 中会显示
      "command": "/Users/yourname/jadx-mcp-plugin/venv/bin/python", // Python 解释器路径 (虚拟环境中的 python)
      "args": ["/Users/yourname/jadx-mcp-plugin/fastmcp_adapter.py"] // FastMCP 适配器脚本路径
    }
  }
}

注意:

  • 请根据实际的项目路径和虚拟环境路径修改 'command' 和 'args' 中的路径。
  • 修改配置文件后,需要重启 Claude 才能生效。

基本使用方法

  1. 启动 Jadx:确保已安装 Jadx 并成功加载 Jadx MCP 插件。
  2. 加载 APK/DEX 文件:在 Jadx 中打开需要分析的 APK 或 DEX 文件进行反编译。
  3. 启动 Claude:启动 Claude 客户端,并确保已按照上述步骤配置了 Jadx MCP 服务器。
  4. Claude 自动连接:如果配置正确,Claude 启动后会自动检测并连接到 Jadx MCP 服务器,工具列表将会显示 "Jadx MCP Server" 提供的工具。
  5. 在 Claude 中使用工具:在 Claude 中,你可以像调用其他工具一样,使用 "Jadx MCP Server" 提供的工具,例如列出类名、获取类源码等,从而在 LLM 对话中融入 Jadx 的反编译分析能力。

信息

分类

开发者工具