JADX-AI-MCP
Plugin for JADX to integrate MCP server
zinja-coder
README
<div align="center">
JADX-AI-MCP
</div>
<!-- It is a still in early stage of development, so expects bugs, crashes and logical erros.-->
<!-- Standalone Plugin for JADX (Started as Fork) with Model Context Protocol (MCP) integration for AI-powered static code analysis and real-time code review and reverse engineering tasks using Claude.-->
Image generated using AI tools.
🤖 What is JADX-AI-MCP?
JADX-AI-MCP is a plugin for the JADX decompiler that integrates directly with Model Context Protocol (MCP) to provide live reverse engineering support with LLMs like Claude.
Think: "Decompile → Context-Aware Code Review → AI Recommendations" — all in real time.
Watch the demo!
It is combination of two tools:
- JADX-AI-MCP
- JADX MCP SERVER
🤖 What is JADX-MCP-SERVER?
JADX MCP Server is a standalone Python server that interacts with a JADX-AI-MCP
plugin (see: jadx-ai-mcp) via MCP (Model Context Protocol). It lets LLMs communicate with the decompiled Android app context live.
Current MCP Tools
The following MCP tools are available:
fetch_current_class()
— Get the class name and full source of selected classget_selected_text()
— Get currently selected textget_all_classes()
— List all classes in the projectget_class_source(class_name)
— Get full source of a given classget_method_by_name(class_name, method_name)
— Fetch a method’s sourcesearch_method_by_name(method_name)
— Search method across classesget_methods_of_class(class_name)
— List methods in a classget_fields_of_class(class_name)
— List fields in a classget_method_code(class_name, method_name)
— Alias forget_method_by_name
//to be removedget_smali_of_class(class_name)
— Fetch smali of class
🗒️ Sample Prompts
🔍 Basic Code Understanding
"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."
🛡️ Vulnerability Detection
"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?"
🛠️ Reverse Engineering Helpers
"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?"
📦 Static Analysis
"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 Code Modification
"Refactor this method to improve readability."
"Add comments to this code explaining each step."
"Rewrite this Java method in Python for analysis."
📄 Documentation & Metadata
"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.)?"
📦 Features
- ✅ MCP server baked into JADX-GUI
- ✅ Exposes currently selected class via HTTP
- ✅ Exposes GUI access to Cluade, i.e. "Explain the selected code to me, Explain what is the use case of highlighted code"
- ✅ Built-in Claude Desktop integration
- ✅ Beta support for real-time code review
- ✅ MCP client interoperability via local loopback
🛠️ Getting Started
1. Downlaod from Releases: https://github.com/zinja-coder/jadx-ai-mcp/releases
Note: Download both jadx-ai-mcp-<version>.jar
and jadx-mcp-server-<version>.zip
files.
# 0. Download the jadx-ai-mcp-<version>.jar and jadx-mcp-server-<version>.zip
https://github.com/zinja-coder/jadx-ai-mcp/releases
# 1.
unzip jadx-ai-mcp-<version>.zip
├jadx-mcp-server/
├── jadx_mcp.py
├── requirements.txt
├── README.md
├── LICENSE
├jadx-ai-mcp-<version>.jar
# 2. Install the plugin
# For this you can follow two approaches:
## 1. One liner - execute below command in your shell
jadx plugins --install "github:zinja-coder:jadx-ai-mcp"
## The above one line code will install the latest version of the plugin directly into the jadx, no need to download the jadx-ai-mcp's .jar file.
## 2. Or you can use JADX-GUI to install it by following images as shown below:
## 3. GUI method, download the .jar file and follow below steps shown in images
# 3. Navigate to jadx-mcp-server directory
cd jadx-mcp-server
# 4. This project uses uv - https://github.com/astral-sh/uv instead of pip for dependency management.
## a. Install uv (if you dont have it yet)
curl -LsSf https://astral.sh/uv/install.sh | sh
## b. Set up the environment
uv venv
source .venv/bin/activate # or .venv\Scripts\activate on Windows
## c. Install dependencies
uv pip install httpx fastmcp
# The setup for jadx-ai-mcp and jadx_mcp_server is done.
🤖 2. Claude Desktop Setup
Make sure Claude Desktop is running with MCP enabled.
For instance, I have used following for Kali Linux: https://github.com/aaddrick/claude-desktop-debian
Configure and add MCP server to LLM file:
nano ~/.config/Claude/claude_desktop_config.json
And following content in it:
{
"mcpServers": {
"jadx-mcp-server": {
"command": "/<path>/<to>/uv",
"args": [
"--directory",
"</PATH/TO/>jadx-mcp-server/",
"run",
"jadx_mcp_server.py"
]
}
}
}
Then, navigate code and interact via real-time code review prompts using the built-in integration.
Give it a shot
- Run jadx-gui and load any .apk file
- Start claude - You must see hammer symbol
- Click on the
hammer
symbol and you should you see somthing like following:
- Run following prompt:
fetch currently selected class and perform quick sast on it
- Allow access when prompted:
- HACK!
This plugin allows total control over the GUI and internal project model to support deeper LLM integration, including:
- Exporting selected class to MCP
- Running automated Claude analysis
- Receiving back suggestions inline
🛣️ Future Roadmap
-
Add Support for apktool
-
Add support for hermes code (ReactNative Application)
-
Add more useful MCP Tools
-
Make LLM be able to modify code on JADX
-
Add prompts templates, give llm access to Android APK Files as Resources
-
END-GOAL : Make all android reverse engineering and APK modification tools Connect with single MCP server to make reverse engineering apk files as easy as possible purely from vibes.
NOTE For Contributors
-
The files related to JADX-AI-MCP can be found under this repo.
-
The files related to jadx-mcp-server can be found here.
To report bugs, issues, feature suggestion, Performance issue, general question, Documentation issue.
- Kindly open an issue with respective template.
🙏 Credits
This project is a plugin for JADX, an amazing open-source Android decompiler created and maintained by @skylot. All core decompilation logic belongs to them. I have only extended it to support my MCP server with AI capabilities.
The original README.md from jadx is included here in this repository for reference and credit.
This MCP server is made possible by the extensibility of JADX-GUI and the amazing Android reverse engineering community.
Also huge thanks to @aaddrick for developing Claude desktop for Debian based linux.
And in last thanks to @anthropics for developing the Model Context Protocol and @FastMCP team
📄 License
JADX-AI-MCP and all related projects inherits the Apache 2.0 License from the original JADX repository.
⚖️ Legal Warning
Disclaimer
The tools jadx-ai-mcp
and jadx_mcp_server
are intended strictly for educational, research, and ethical security assessment purposes. They are provided "as-is" without any warranties, expressed or implied. Users are solely responsible for ensuring that their use of these tools complies with all applicable laws, regulations, and ethical guidelines.
By using jadx-ai-mcp
or jadx_mcp_server
, you agree to use them only in environments you are authorized to test, such as applications you own or have explicit permission to analyze. Any misuse of these tools for unauthorized reverse engineering, infringement of intellectual property rights, or malicious activity is strictly prohibited.
The developers of jadx-ai-mcp
and jadx_mcp_server
shall not be held liable for any damage, data loss, legal consequences, or other consequences resulting from the use or misuse of these tools. Users assume full responsibility for their actions and any impact caused by their usage.
Use responsibly. Respect intellectual property. Follow ethical hacking practices.
Built with ❤️ for the reverse engineering and AI communities.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
MCP Package Docs Server
Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.
Claude Code MCP
An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
@kazuph/mcp-taskmanager
Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.
Linear MCP Server
Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.
mermaid-mcp-server
A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.
Jira-Context-MCP
MCP server to provide Jira Tickets information to AI coding agents like Cursor

Linear MCP Server
A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Sequential Thinking MCP Server
This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.