JADX Android Decompiler MCP server

A plugin for Jadx that exposes the MCP API, enabling intelligent navigation and automation of reverse engineering workflows — ideal for AI-assisted analysis of Android apps.
Back to servers
Provider
Mobile Hacking Lab
Release date
Apr 10, 2025
Language
Java
Stats
56 stars

The Jadx MCP Plugin provides a bridge between Jadx decompiler and Claude AI via the Model Context Protocol (MCP), allowing you to leverage Claude's capabilities for intelligent navigation and automation of Android app reverse engineering workflows.

Installation

Prerequisites

  • Jadx installed on your system
  • Python 3.x

Setup Steps

  1. Clone the repository and set up the environment:
# 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 on Linux/Mac
source venv/bin/activate      
# Activate on Windows
.\venv\Scripts\activate       
  1. Install Python dependencies:
pip install -r requirements.txt 
  1. Install the Jadx plugin:
    • Download the latest plugin JAR from the releases
    • Place it in the Jadx plugins/ folder or load it via Plugins -> install plugin in Jadx

Claude Integration Setup

To configure Claude Desktop to work with the MCP server:

  1. Open Claude Desktop
  2. Navigate to File -> Settings -> Developer -> Edit Config -> claude_desktop_config.json
  3. Add an MCP server configuration:

For Windows:

{
  "mcpServers": {
    "Jadx MCP Server": {
      "command": "C:\\path\\to\\jadx-mcp-plugin\\venv\\Scripts\\python.exe",
      "args": ["C:\\path\\to\\jadx-mcp-plugin\\fastmcp_adapter.py"]
    }
  }
}

For MacOS / Linux:

{
  "mcpServers": {
    "Jadx MCP Server": {
      "command": "/path/to/jadx-mcp-plugin/venv/bin/python",
      "args": ["/path/to/jadx-mcp-plugin/fastmcp_adapter.py"]
    }
  }
}
  1. Restart Claude completely after editing the configuration

Usage

Basic Workflow

  1. Open Jadx with the plugin installed
  2. Load an APK or DEX file in Jadx
  3. Start Claude - it should detect and activate the Jadx MCP Server tools
  4. Use Claude to analyze and navigate the decompiled code

Advanced Configuration

You can customize the HTTP interface address by launching Jadx with:

jadx-gui -Pjadx-mcp.http-interface=http://localhost:8085

This changes the default host/port from http://localhost:8085. If you modify this address, remember to update the corresponding URL in fastmcp_adapter.py to match.

Available Tools

The plugin provides these tools through Claude:

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

These tools can be accessed directly from Claude when analyzing code. Simply ask Claude to perform tasks like "list all classes in this app" or "show me the source code for class X" and it will use the appropriate tool.

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later