local-only server
The server can only run on the client’s local machine because it depends on local resources.
⚙️ Jadx MCP 插件 — 通过 MCP 访问 Claude 反编译器
该项目提供了一个用Java编写的Jadx插件,该插件通过 HTTP 公开 Jadx API ,从而能够通过模型上下文协议 (MCP)与Claude等 MCP 客户端进行实时交互。一个轻量级的 Python FastMCP适配器充当了 Claude 和该插件之间的桥梁。这实现了逆向工程工作流程的智能导航和自动化,非常适合用于 AI 辅助的 Android 应用安全分析。
🧰 设置说明
安装 Python 依赖项
🧠 设置 Claude MCP 客户端集成
要在 Claude Desktop 中使用此适配器,请转到File
-> Settings
-> Developer
-> Edit Config
-> claude_desktop_config.json
并添加一个指向 venv 中的 Python 可执行文件的 MCP 服务器(以防止依赖问题)以及以下示例的完整适配器路径:
视窗:
MacOS / Linux:
编辑配置后,请务必重启(退出)Claude。重启后,它应该如下所示:
✅ 使用流程
- 使用放置在其
plugins/
文件夹中的版本中的最新插件 JAR 打开Jadx ,或通过Plugins
->install plugin
加载它。 - 加载 APK 或 DEX 文件
- (可选)您可以通过使用以下命令启动 Jadx 来指定 HTTP 接口地址:如果您想更改默认主机/端口(Copy
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 插件
Java 插件位于:
它使用JadxPlugin
API( jadx.api.*
)来:
- 加载反编译的类和方法
- 通过嵌入式 HTTP 服务器提供结构化数据
- 响应
/invoke
和/tools
端点
🚀 使用 Gradle Tasks 实现自动安装
您可以使用以下 Gradle 任务一步构建并安装插件:
这使用了
jadx plugins
CLI。请确保 Jadx 已安装并位于PATH
中。
对于其他与插件相关的任务(卸载、启用/禁用),请参阅plugin/build.gradle
中的任务定义。
🔧 手动安装
要构建插件:
使用jadx plugins
CLI 安装插件 JAR:
或者,将构建的.jar
文件放入 Jadx plugins/
文件夹中,通常位于: ~/.jadx/plugins/
如果您手动放置 JAR,您还需要通过 Jadx GUI 或运行以下命令启用该插件:
Python FastMCP 适配器
适配器文件是:
它将 Claude 的 MCP 工具调用转换为 HTTP POST 请求,并发送到正在运行的 Jadx 插件服务器。启动 Claude**之前,**请确保 Jadx 已打开。
🤝 贡献
欢迎 PR、功能请求和工具扩展!
该项目由Mobile Hacking Lab维护。
🧩 积分
This server cannot be installed
通过 HTTP 公开 Jadx 反编译器 API 的服务器,使 Claude 能够与反编译的 Java/Android 代码交互以列出类、获取源代码、检查方法/字段并实时提取代码。