该项目提供了一个用Java编写的 Jadx 插件,该插件通过HTTP公开了 Jadx API — 使通过像 Claude 这样的 MCP 客户端进行实时交互成为可能。一个轻量级的 FastMCP 适配器用 Python 编写,作为 Claude 和插件之间的桥梁。这使得智能导航和逆向工程工作流自动化成为可能,非常适合用于 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
pip install -r requirements.txt
要在 Claude Desktop 中使用此适配器,请转到 文件 -> 设置 -> 开发者 -> 编辑配置 -> claude_desktop_config.json 并添加一个指向 venv 中 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。
重启后应该看起来像这样:

打开 Jadx,并将最新插件 JAR 放入其 plugins/ 文件夹中,或通过 插件 -> 安装插件 加载。
加载 APK 或 DEX 文件。
(可选)您可以通过以下命令指定 HTTP 接口地址来启动 Jadx:
jadx-gui -Pjadx-mcp.http-interface=http://localhost:8085
如果您想更改默认主机/端口(http://localhost:8085),这非常有用。
注意: 如果在这里更改接口地址,请确保也更新
fastmcp_adapter.py中对应的 URL 以匹配。
Claude 将检测并激活 Jadx MCP 服务器工具。
现在您可以列出类、获取源代码、检查方法/字段,并实时提取代码。
| 工具 | 描述 |
|---|---|
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 插件位于:
plugin/src/main/java/com/mobilehackinglab/jadxplugin/McpPlugin.java
它使用 JadxPlugin API (jadx.api.*) 来:
/invoke 和 /tools 终端点您可以使用以下 Gradle 任务一步构建并安装插件:
./gradlew installPlugin
此任务使用
jadx pluginsCLI。请确保已安装 Jadx 并将其添加到您的PATH中。
对于其他插件相关任务(卸载、启用/禁用),请参阅任务定义在 plugin/build.gradle。
要构建插件:
./gradlew build
# 输出: plugin/build/libs/jadx-mcp-plugin-<版本>.jar
使用 jadx plugins CLI 安装插件 JAR:
jadx plugins --install-jar 路径/to/jadx-mcp-plugin-<版本>.jar
或者,将构建好的 .jar 文件放置到您的 Jadx plugins/ 文件夹中,通常位于:~/.jadx/plugins/
如果您手动放置 JAR 文件,还需要通过 Jadx GUI 或运行以下命令启用插件:
jadx plugins --enable jadx-mcp
适配器文件是:
fastmcp_adapter.py
它将 Claude 的 MCP 工具调用转换为对正在运行的 Jadx 插件服务器的 HTTP POST 请求。请确保在启动 Claude 之前打开 Jadx。
欢迎提交 PR、功能请求和工具扩展!
此项目由 Mobile Hacking Lab 维护。