Jadx Mcp Plugin

by mobilehackinglab

99 584 downloads Not rated yet
GitHub

About

## ⚙️ Jadx MCP Plugin — Decompiler Access for Claude via MCP This project provides a [Jadx](https://github.com/skylot/jadx) plugin written in **Java**, which exposes the **Jadx API over HTTP** — enabling live interaction through MCP clients like [Claude](https://www.anthropic.com/index/introducing-claude) via the…

Explore

- Exposes Jadx API via HTTP for MCP clients
- Provides seven decompiler tools (list classes, search, get source, etc.)
- Python FastMCP adapter handles MCP‑to‑HTTP translation
- Embedded HTTP server responds to /invoke and /tools endpoints
- Automated plugin installation via Gradle (./gradlew installPlugin)
- Cross‑platform (Windows, macOS, Linux) with Claude Desktop integration

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Jadx Mcp Plugin
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository


python3 -m venv venv

bash
pip install -r requirements.txt

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:

json
{
"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:
json
{
"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:

1. Open Jadx with the latest plugin JAR from the releases placed in its plugins/ folder or load it via Plugins -> install plugin.
2. Load an APK or DEX file
3. (Optional) You can specify the HTTP interface address by launching Jadx with:

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

This 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.py to match.

4. Claude will detect and activate the Jadx MCP Server tools.
5. You can now list classes, fetch source, inspect methods/fields, and extract code live.

---

You can use the following Gradle task to build and install the plugin in one step:

bash
./gradlew installPlugin

> This uses the jadx plugins CLI. Make sure Jadx is installed and available in your PATH.

For other plugin-related tasks (uninstall, enable/disable), see the task definitions in plugin/build.gradle.

To build the plugin:

bash
./gradlew build

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

| 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 |

---

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "jadx mcp plugin": {
            "jadx-mcp-plugin": {
                "command": "python3",
                "args": [
                    "-m",
                    "venv",
                    "venv"
                ]
            }
        }
    }
}

McpServers

{
    "jadx-mcp-plugin": {
        "command": "python3",
        "args": [
            "-m",
            "venv",
            "venv"
        ]
    }
}

Output: plugin/build/libs/jadx-mcp-plugin-<version>.jar


Install the plugin JAR using the jadx plugins CLI:

bash
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:

bash
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

- Jadx
- FastMCP
- Claude by Anthropic

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.

Videos about Jadx Mcp Plugin

Relevant YouTube tutorials, setups, and demos