Jadx MCP Plugin
A Java plugin that exposes the Jadx decompiler API over HTTP for interaction with MCP clients.
⚙️ Jadx MCP Plugin — Decompiler Access for Claude via MCP
This project provides a Jadx plugin written in Java, which exposes the Jadx API over HTTP — enabling live interaction through MCP clients like Claude via the Model Context Protocol (MCP). A lightweight FastMCP adapter in Python acts as a bridge between Claude and the plugin. This enables intelligent navigation and automation of reverse engineering workflows, ideal for AI-assisted security analysis of Android apps.
🧰 Setup Instructions
# Clone this repository
git clone https://github.com/mobilehackinglab/jadx-mcp-plugin.git
cd jadx-mcp-plugin
# Create and activate a virtual environment
python3 -m venv venv
# Activate:
source venv/bin/activate # Linux/Mac
.\venv\Scripts\activate # Windows
Install Python dependencies
pip install -r requirements.txt
🧠 Setup Claude MCP CLient Integration
To use this adapter in Claude Desktop, go to File -> Settings -> Developer -> Edit Config -> claude_desktop_config.json and add an MCP server pointing to the Python executable in the venv (to prevent depedency issues) and the full adapter path following below examples:
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"]
}
}
}
Make sure to restart (Quit) Claude after editing the config.
After restart it should look like this:

✅ Usage Flow
-
Open Jadx with the latest plugin JAR from the releases placed in its
plugins/folder or load it viaPlugins->install plugin. -
Load an APK or DEX file
-
(Optional) You can specify the HTTP interface address by launching Jadx with:
jadx-gui -Pjadx-mcp.http-interface=http://localhost:8085This is useful if you want to change the default host/port (
http://localhost:8085).Note: If you change the interface address here, make sure to also update the corresponding URL in
fastmcp_adapter.pyto match. -
Claude will detect and activate the Jadx MCP Server tools.
-
You can now list classes, fetch source, inspect methods/fields, and extract code live.
🧪 Tools Provided
| Tool | Description |
|---|---|
list_all_classes | Get all decompiled class names |
search_class_by_name | Find classes matching a string |
get_class_source | Get full source of a given class |
search_method_by_name | Find methods matching a string |
get_methods_of_class | List all method names in a class |
get_fields_of_class | List all field names in a class |
get_method_code | Extract decompiled code for a method |
🛠 Development
☕ Java Plugin
The Java plugin is located at:
plugin/src/main/java/com/mobilehackinglab/jadxplugin/McpPlugin.java
It uses the JadxPlugin API (jadx.api.*) to:
- Load decompiled classes and methods
- Serve structured data via an embedded HTTP server
- Respond to
/invokeand/toolsendpoints
🚀 Automated Installation with Gradle Tasks
You can use the following Gradle task to build and install the plugin in one step:
./gradlew installPlugin
This uses the
jadx pluginsCLI. Make sure Jadx is installed and available in yourPATH.
For other plugin-related tasks (uninstall, enable/disable), see the task definitions in plugin/build.gradle.
🔧 Manual Installation
To build the plugin:
./gradlew build
# Output: plugin/build/libs/jadx-mcp-plugin-<version>.jar
Install the plugin JAR using the jadx plugins CLI:
jadx plugins --install-jar path/to/jadx-mcp-plugin-<version>.jar
Alternatively, place the built .jar file into your Jadx plugins/ folder, typically located at: ~/.jadx/plugins/
If you place the JAR manually, you’ll also need to enable the plugin through the Jadx GUI or by running:
jadx plugins --enable jadx-mcp
Python FastMCP Adapter
The adapter file is:
fastmcp_adapter.py
It translates Claude’s MCP tool calls into HTTP POSTs to the running Jadx plugin server. Make sure Jadx is open before starting Claude.
🤝 Contributing
PRs, feature requests, and tool extensions are welcome!
This project is maintained by Mobile Hacking Lab.
🧩 Credits
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Contract Inspector
Retrieve on-chain information for EVM contracts locally using an Ethereum RPC node and Etherscan API.
Lightning Tools MCP Server
An MCP server for accessing useful Bitcoin Lightning tools.
Metasploit MCP Server
An MCP server for integrating with the Metasploit Framework, enabling payload generation and management.
SeedDream 3.0 FAL
Generate images using Bytedance's SeedDream 3.0 model via the FAL AI platform. Requires a FAL AI API key.
mcp-graphql
A GraphQL server that supports the Model Context Protocol (MCP), enabling Large Language Models (LLMs) to interact with GraphQL APIs through schema introspection and query execution.
Web3 MCP Server
An MCP server for interacting with Web3 and EVM-compatible chains.
VectorMCP
A Ruby gem for building Model Context Protocol (MCP) servers to expose tools, resources, and prompts to LLM clients.
.NET Types Explorer
Provides detailed type information from .NET projects including assembly exploration, type reflection, and NuGet integration for AI coding agents
MCP-Compose
Orchestration tool for managing multiple MCP servers with a Docker Compose-style interface and a unified HTTP proxy.
Angular MCP Server
An MCP server for accessing the official Angular documentation.