Jadx MCP Plugin
Um plugin Java que expõe a API do decompilador Jadx via HTTP para interação com clientes MCP.
Documentação
⚙️ Jadx MCP Plugin — Acesso ao Decompilador para Claude via MCP
Este projeto fornece um plugin Jadx escrito em Java, que expõe a API do Jadx via HTTP — permitindo interação ao vivo através de clientes MCP como Claude via Model Context Protocol (MCP). Um adaptador leve FastMCP em Python atua como ponte entre o Claude e o plugin. Isso permite navegação inteligente e automação de fluxos de trabalho de engenharia reversa, ideal para análise de segurança assistida por IA de aplicativos Android.
🧰 Instruções de Configuração
# 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
Instalar dependências Python
pip install -r requirements.txt
🧠 Configurar Integração com o Cliente MCP do Claude
Para usar este adaptador no Claude Desktop, vá para File -> Settings -> Developer -> Edit Config -> claude_desktop_config.json e adicione um servidor MCP apontando para o executável Python no venv (para evitar problemas de dependência) e o caminho completo do adaptador, seguindo os exemplos abaixo:
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"]
}
}
}
Certifique-se de reiniciar (sair) o Claude após editar a configuração.
Após reiniciar, deve ficar assim:

✅ Fluxo de Uso
-
Abra o Jadx com o JAR do plugin mais recente de os lançamentos colocado na pasta
plugins/ou carregue-o viaPlugins->install plugin. -
Carregue um arquivo APK ou DEX
-
(Opcional) Você pode especificar o endereço da interface HTTP iniciando o Jadx com:
jadx-gui -Pjadx-mcp.http-interface=http://localhost:8085Isso é útil se você quiser alterar o host/porta padrão (
http://localhost:8085).Nota: Se você alterar o endereço da interface aqui, certifique-se de também atualizar a URL correspondente em
fastmcp_adapter.pypara que corresponda. -
O Claude detectará e ativará as ferramentas do Servidor MCP do Jadx.
-
Agora você pode listar classes, buscar código-fonte, inspecionar métodos/campos e extrair código ao vivo.
🧪 Ferramentas Fornecidas
| Tool | Description |
|---|---|
list_all_classes | Obter todos os nomes de classes descompiladas |
search_class_by_name | Encontrar classes que correspondem a uma string |
get_class_source | Obter o código-fonte completo de uma determinada classe |
search_method_by_name | Encontrar métodos que correspondem a uma string |
get_methods_of_class | Listar todos os nomes de métodos em uma classe |
get_fields_of_class | Listar todos os nomes de campos em uma classe |
get_method_code | Extrair código descompilado para um método |
🛠 Desenvolvimento
☕ Plugin Java
O plugin Java está localizado em:
plugin/src/main/java/com/mobilehackinglab/jadxplugin/McpPlugin.java
Ele usa a API JadxPlugin (jadx.api.*) para:
- Carregar classes e métodos descompilados
- Servir dados estruturados via um servidor HTTP embutido
- Responder aos endpoints
/invokee/tools
🚀 Instalação Automatizada com Tarefas Gradle
Você pode usar a seguinte tarefa Gradle para compilar e instalar o plugin em uma única etapa:
./gradlew installPlugin
Isso usa a CLI
jadx plugins. Certifique-se de que o Jadx esteja instalado e disponível no seuPATH.
Para outras tarefas relacionadas ao plugin (desinstalar, ativar/desativar), consulte as definições de tarefas em plugin/build.gradle.
🔧 Instalação Manual
Para compilar o plugin:
./gradlew build
# Output: plugin/build/libs/jadx-mcp-plugin-<version>.jar
Instale o JAR do plugin usando a CLI jadx plugins:
jadx plugins --install-jar path/to/jadx-mcp-plugin-<version>.jar
Alternativamente, coloque o arquivo .jar compilado na pasta plugins/ do seu Jadx, normalmente localizada em: ~/.jadx/plugins/
Se você colocar o JAR manualmente, também precisará ativar o plugin através da GUI do Jadx ou executando:
jadx plugins --enable jadx-mcp
Adaptador Python FastMCP
O arquivo do adaptador é:
fastmcp_adapter.py
Ele traduz as chamadas de ferramentas MCP do Claude em POSTs HTTP para o servidor do plugin Jadx em execução. Certifique-se de que o Jadx esteja aberto antes de iniciar o Claude.
🤝 Contribuindo
PRs, solicitações de recursos e extensões de ferramentas são bem-vindos!
Este projeto é mantido por Mobile Hacking Lab.