Back to MCP directory
publicPublicdnsLocal runtime

jadx-mcp-plugin

该项目是一个Jadx插件,通过HTTP暴露Jadx API,实现与Claude的实时交互,支持AI辅助的Android应用逆向工程分析。

article

README

🚀 🛠️ Jadx MCP 插件 —— 通过 MCP 实现 Claude 对 Jadx 的反编译访问

本项目是一个用 Java 编写的 Jadx 插件,借助 Jadx API 提供 HTTP 接口服务。这让 Claude 这类工具能通过 模型上下文协议 (MCP) 实现实时交互。轻量级的 FastMCP 适配器以 Python 编写,充当 Claude 和该插件之间的桥梁,使智能导航和自动化反编译工作流程成为可能,非常适合利用 AI 辅助进行 Android 应用的安全分析。

🚀 快速开始

安装步骤

克隆仓库

# 克隆此仓库
git clone https://github.com/mobilehackinglab/jadx-mcp-plugin.git
cd jadx-mcp-plugin

# 创建并激活虚拟环境
python3 -m venv venv

# 激活:
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": "/home/user/jadx-mcp-plugin/venv/bin/python",
      "args": ["python", "-m", "fastmcp_adapter"]
    }
  }
}

配置完成后,确保 Jadx 已经启动并运行。

使用流程

  1. 启动 Jadx:首先打开 Jadx 并加载目标文件。
  2. 启动 Claude:在另一个终端中启动 Claude,并连接到 Jadx 的 MCP 服务器。
  3. 使用工具:通过 Claude 提供的 MCP 接口调用反编译功能。

✨ 主要特性

以下是插件支持的主要功能: | 工具名称 | 描述 | |------------------|--------------------------------| | 反编译文件 | 从 Jadx 获取指定文件的反编译代码。 | | 查看类信息 | 获取特定类的方法、字段和其他详细信息。 | | 导出字节码 | 输出指定类的原始字节码数据。 | | 搜索关键字 | 在所有反编译代码中搜索特定字符串或关键字。| | 替换代码 | 对反编译后的代码进行修改并保存回 Jadx 项目。|

📚 详细文档

Java 插件开发

自动化构建

使用 Gradle 脚本自动构建插件:

./gradlew build

构建输出为 plugin/build/libs/jadx-mcp-plugin-<version>.jar

手动安装

将生成的 JAR 文件手动复制到 Jadx 的 plugins 目录中,路径通常为:~/.jadx/plugins/

然后通过以下命令启用插件:

jadx plugins --enable jadx-mcp

Python FastMCP 适配器

文件路径:

fastmcp_adapter.py

该脚本将 Claude 的 MCP 工具调用转换为对运行中的 Jadx 插件服务器的 HTTP POST 请求。确保在启动 Claude 之前已启动并打开了 Jadx。

🤝 贡献指南

欢迎提交 PR、功能请求和工具扩展!
该项目由 Mobile Hacking Lab 维护。

🧩 致谢

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client