JADX-MCP-SERVER

JADX-MCP-SERVER

一个模型上下文协议服务器,连接到定制的 JADX 分支 (JADX-AI),并使本地 LLM 能够与反编译的 Android 应用程序代码交互,以实现实时逆向工程辅助。

zinja-coder

开发者工具
访问服务器

README

JADX-MCP-SERVER

仍处于 Beta 阶段 — 预计会出现错误、崩溃和逻辑错误。

MCP (模型上下文协议) 服务器,连接到 JADX 的自定义分支 JADX-AI,并直接为本地 LLM(如 Claude Desktop)提供逆向工程能力。

jadx-mcp-banner


🤖 什么是 JADX-MCP-SERVER?

JADX MCP Server 是一个独立的 Python 服务器,通过 MCP (模型上下文协议) 与 jadx-gui 的修改版本(参见:jadx-ai)进行交互。它允许 LLM 与实时反编译的 Android 应用程序上下文进行通信。

🤖 什么是 JADX-AI?

JADX-AI原始 JADX 反编译器 的修改版本,它直接与 模型上下文协议 (MCP) 集成,以提供使用 LLM(如 Claude)的实时逆向工程支持

可以这样理解:“反编译 → 上下文感知代码审查 → AI 推荐” — 全部实时进行。

立即下载:https://github.com/zinja-coder/jadx-ai/releases

观看演示!

观看视频

它是两个工具的组合:

  1. JADX-AI
  2. JADX MCP SERVER

当前 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 代码

🗒️ 示例提示

🔍 基本代码理解

"用一段话解释这个类的作用。"

"总结这个方法的职责。"

"这个类中是否有任何混淆?"

"列出这个类可能需要的所有 Android 权限。"

🛡️ 漏洞检测

"这个方法中是否有任何不安全的 API 用法?"

"检查这个类中是否有硬编码的密钥或凭据。"

"这个方法在使用用户输入之前是否对其进行清理?"

"这段代码可能会引入哪些安全漏洞?"

🛠️ 逆向工程助手

"反混淆并将类和方法重命名为可读的名称。"

"你能推断出这个 smali 方法的原始用途吗?"

"这个类似乎是哪些库或 SDK 的一部分?"

📦 静态分析

"列出这个类中所有与网络相关的 API 调用。"

"识别文件 I/O 操作及其潜在风险。"

"这个方法是否会泄露设备信息或 PII?"

🤖 AI 代码修改

"重构这个方法以提高可读性。"

"为这段代码添加注释,解释每个步骤。"

"用 Python 重写这个 Java 方法以进行分析。"

📄 文档和元数据

"为所有方法生成 Javadoc 风格的注释。"

"这个类可能属于哪个包或应用程序组件?"

"你能识别出 Android 组件类型(Activity、Service 等)吗?"

📦 功能 (v0.0.1-beta)

  • ✅ MCP 服务器已集成到 JADX-GUI 中
  • ✅ 通过 HTTP 公开当前选定的类
  • ✅ 内置 Claude Desktop 集成
  • ✅ 实时代码审查的 Beta 支持
  • ✅ 通过本地环回的 MCP 客户端互操作性

这是一个 开发者 Beta 版 — 专为逆向工程师、AI 研究人员和 LLM 工具构建者设计。


🛠️ 入门指南

在此阅读

🛣️ 未来路线图

  • 增加对 apktool 的支持

  • 增加对 hermes 代码(ReactNative 应用程序)的支持

  • 添加更多有用的 MCP 工具

  • 使 LLM 能够修改 JADX 上的代码

贡献者须知

  • 与 JADX-AI 相关的文件可以在 /jadx-ai/jadx-gui/src/main/java/jadx/gui/plugins/ 下找到,这里

  • jadx-mcp-server 相关的文件只能在此存储库中找到。

🙏 鸣谢

该项目是原始 JADX 的一个分支,JADX 是一个由 @skylot 创建和维护的令人惊叹的开源 Android 反编译器。所有核心反编译逻辑都属于他们。我只是扩展了它以支持我的具有 AI 功能的 MCP 服务器。

📎 原始 README (JADX)

原始的 jadx 的 README.md 包含在此存储库中,以供参考和致谢。

此 MCP 服务器的实现得益于 JADX-GUI 的可扩展性和令人惊叹的 Android 逆向工程社区。

还要非常感谢 @aaddrick 开发了适用于基于 Debian 的 Linux 的 Claude desktop。

📄 许可证

此分支继承了原始 JADX 存储库的 Apache 2.0 许可证。

⚖️ 法律警告

免责声明

工具 jadx-aijadx_mcp_server 仅用于教育、研究和道德安全评估目的。 它们按“原样”提供,不提供任何明示或暗示的保证。 用户全权负责确保他们对这些工具的使用符合所有适用的法律、法规和道德准则。

通过使用 jadx-aijadx_mcp_server,您同意仅在您有权测试的环境中使用它们,例如您拥有或明确允许分析的应用程序。 严禁滥用这些工具进行未经授权的逆向工程、侵犯知识产权或恶意活动。

jadx-aijadx_mcp_server 的开发者不对因使用或滥用这些工具而造成的任何损害、数据丢失、法律后果或其他后果承担责任。 用户对其行为以及因其使用造成的任何影响承担全部责任。

负责任地使用。 尊重知识产权。 遵循道德黑客行为规范。


用 ❤️ 为逆向工程和 AI 社区构建。

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Curri MCP Server

Curri MCP Server

通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。

官方
本地
JavaScript