Jadx MCP Server

Headless JADX Android decompiler exposed as a Model Context Protocol (MCP) server. Single-binary wrapper installable via npx.

Local serverstdioPython

What is the Jadx MCP server?

Headless JADX Android decompiler exposed as a Model Context Protocol (MCP) server. Single-binary wrapper installable via npx. The jadx mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 4 defined tools rather than through you.

What it actually does

A single-process, headless jadx decompiler + MCP server built for reverse-engineering large Android apps (e.g. Douyin: 295 MB / 55 dex) under a 20 GB heap, with every MCP tool call bounded to ~60 s. It exposes 32 RE tools to LLM clients over the official Model Context Protocol (Streamable HTTP).

  • GUI-embedded plugins — (e.g. jadx-ai-mcp) bail out when there is no GUI context — they **cannot run
  • The earlier jadx-headless-mcp located information by grep-ing smali text, which forced

Its toolset

Everything the assistant can do here goes through one of these:

  • Self — test (no MCP client needed):
  • Flag — Default
  • Session — The Session tool exposed by this server
  • Resources — The Resources tool exposed by this server

Configuration

  • JDK 17+ (Jetty 12 and the MCP SDK require 17; jadx artifacts are Java 11 bytecode, forward-compatible). - Maven 3.9+ to build from source. - Heap: run with -Xmx20g for large apps (smaller apps need less). ripgrep (rg) on PATH is optional (enables regex fallback for search_in_code).

Adding it to your client

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.

When to reach for it

Plenty of browser automation servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Jadx's toolset — Self, Flag, Session and 1 more — is a fair guide to whether it matches your workflow. It is maintained by sameelsummer; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the jadx mcp server does with a few real requests.

Available tools

ToolWhat it does
Selftest (no MCP client needed):
FlagDefault
SessionThe Session tool exposed by this server.
ResourcesThe Resources tool exposed by this server.

Configuration

  • JDK 17+ (Jetty 12 and the MCP SDK require 17; jadx artifacts are Java 11 bytecode, forward-compatible). - Maven 3.9+ to build from source. - Heap: run with -Xmx20g for large apps (smaller apps need less). ripgrep (rg) on PATH is optional (enables regex fallback for search_in_code).

Example prompts to try

  • Use Jadx to Self.
  • Use Jadx to Flag.
  • Use Jadx to Session.

Frequently asked questions

It connects Jadx to MCP-compatible AI assistants such as Claude and Cursor, exposing 4 tools (Self, Flag, Session, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Jadx directly.