JADX-MCP 服务器
一种模型上下文协议服务器,它连接到自定义的JADX分支(JADX-AI),并使本地语言模型能够与反编译的Android应用程序代码进行交互,以提供实时逆向工程辅助。
服务介绍
JADX-MCP-SERVER (Zin 的逆向工程 MCP 套件的一部分)

立即下载: https://github.com/zinja-coder/jadx-ai-mcp/releases
🤖 什么是 JADX-MCP-SERVER?
JADX MCP 服务器是一个独立的 Python 服务器,通过 MCP(模型上下文协议)与修改版的 jadx-gui(参见:jadx-ai-mcp)交互。它允许 LLMs 与反编译后的 Android 应用程序上下文进行实时通信。
🤖 什么是 JADX-AI-MCP?
JADX-AI-MCP 是 JADX 反编译器的一个插件,直接集成 模型上下文协议 (MCP),以提供 像 Claude 这样的 LLM 的实时逆向工程支持。
想象一下:“反编译 → 上下文感知代码审查 → AI 建议”——所有这一切都是实时进行的。
观看演示!
它结合了两个工具:
- JADX-AI-MCP
- JADX MCP 服务器
其他用于 Android 逆向工程的 MCP 服务器
当前可用的 MCP 工具
以下 MCP 工具可用:
fetch_current_class()— 获取选中类的类名和完整源代码get_selected_text()— 获取当前选中的文本get_all_classes()— 列出项目中的所有类get_class_source(class_name)— 获取给定类的完整源代码get_method_by_name(class_name, method_name)— 获取方法的源代码search_method_by_name(method_name)— 在所有类中搜索方法get_methods_of_class(class_name)— 列出类中的所有方法get_fields_of_class(class_name)— 列出类中的所有字段get_method_code(class_name, method_name)—get_method_by_name的别名 // 将被移除get_smali_of_class(class_name)— 获取类的 smali 代码
注意:已在 Claude Desktop 上测试。未来可能会测试对其他 LLM 的支持。
🗒️ 示例提示
🔍 基本代码理解
"Explain what this class does in one paragraph."
"Summarize the responsibilities of this method."
"Is there any obfuscation in this class?"
"List all Android permissions this class might require."
🛡️ 漏洞检测
"Are there any insecure API usages in this method?"
"Check this class for hardcoded secrets or credentials."
"Does this method sanitize user input before using it?"
"What security vulnerabilities might be introduced by this code?"
🛠️ 反向工程辅助工具
"Deobfuscate and rename the classes and methods to something readable."
"Can you infer the original purpose of this smali method?"
"What libraries or SDKs does this class appear to be part of?"
📦 静态分析
"List all network-related API calls in this class."
"Identify file I/O operations and their potential risks."
"Does this method leak device info or PII?"
🤖 AI 代码修改
"Refactor this method to improve readability."
"Add comments to this code explaining each step."
"Rewrite this Java method in Python for analysis."
📄 文档和元数据
"Generate Javadoc-style comments for all methods."
"What package or app component does this class likely belong to?"
"Can you identify the Android component type (Activity, Service, etc.)?"
🛠️ 入门指南
🛣️ 未来路线图
- 添加对 apktool 的支持
- 添加对 hermes 代码(ReactNative 应用程序)的支持
- 添加更多有用的 MCP 工具
- 使 LLM 能够在 JADX 中修改代码
- 添加提示模板,让 LLM 访问 Android APK 文件作为资源
- 最终目标:使所有 Android 反向工程和 APK 修改工具通过单个 MCP 服务器连接,从而尽可能轻松地从感觉上反向工程 APK 文件。
对贡献者的注意事项
- 与 JADX-AI-MCP 相关的文件可以在这里找到 这里
- 与 jadx-mcp-server 相关的文件仅在这个仓库中可以找到。
🙏 致谢
此项目是为 JADX 设计的一个插件,JADX 是一个由 @skylot 创建并维护的出色的开源 Android 反编译器。所有核心反编译逻辑归功于他们。我仅扩展了它以支持我的带有 AI 功能的 MCP 服务器。
此仓库中包含了原始的 JADX README.md 文件,以供参考和致谢。
这个 MCP 服务器得益于 JADX-GUI 的可扩展性和出色的 Android 反向工程社区。
同时特别感谢 @aaddrick 为基于 Debian 的 Linux 开发了 Claude 桌面版。
最后感谢 @anthropics 开发了模型上下文协议以及 @FastMCP 团队。
📄 许可证
此插件继承自原始 JADX 仓库的 Apache 2.0 许可证。
⚖️ 法律声明
免责声明
jadx-ai-mcp 和 jadx_mcp_server 工具严格用于教育、研究和道德安全评估目的。它们“按原样”提供,不附带任何明示或暗示的保证。用户需自行确保其使用这些工具的行为符合所有适用的法律、法规和道德准则。
通过使用 jadx-ai-mcp 或 jadx_mcp_server,您同意仅在您被授权测试的环境中使用它们,例如您自己拥有的应用程序或您明确获得分析许可的应用程序。任何未经授权的逆向工程、侵犯知识产权或恶意活动的滥用行为都是严格禁止的。
jadx-ai-mcp 和 jadx_mcp_server 的开发者不对因使用或误用这些工具而造成的任何损害、数据丢失、法律后果或其他后果承担责任。用户对其行为及其使用所造成的影响承担全部责任。
负责任地使用。尊重知识产权。遵循道德黑客实践。
以❤️为逆向工程和AI社区构建。
