⚙️ Complemento MCP de Jadx: acceso al descompilador para Claude a través de MCP
Este proyecto proporciona un complemento Jadx escrito en Java que expone la API de Jadx a través de HTTP , lo que permite la interacción en vivo con clientes MCP como Claude mediante el Protocolo de Contexto de Modelo (MCP) . Un adaptador FastMCP ligero en Python actúa como puente entre Claude y el complemento. Esto permite la navegación inteligente y la automatización de flujos de trabajo de ingeniería inversa, ideal para el análisis de seguridad asistido por IA de aplicaciones Android.
🧰 Instrucciones de configuración
Instalar dependencias de Python
🧠 Configurar la integración del cliente Claude MCP
Para usar este adaptador en Claude Desktop, vaya a File
-> Settings
-> Developer
-> Edit Config
-> claude_desktop_config.json
y agregue un servidor MCP que apunte al ejecutable de Python en venv (para evitar problemas de dependencia) y la ruta completa del adaptador siguiendo los siguientes ejemplos:
Ventanas:
MacOS/Linux:
Asegúrate de reiniciar (Salir) Claude después de editar la configuración. Tras reiniciar, debería verse así:
✅ Flujo de uso
- Abra Jadx con el último JAR del complemento de las versiones ubicadas en su carpeta
plugins/
o cárguelo a través dePlugins
->install plugin
. - Cargar un archivo APK o DEX
- (Opcional) Puede especificar la dirección de la interfaz HTTP iniciando Jadx con:Esto es útil si desea cambiar el host/puerto predeterminado (
http://localhost:8085
).Nota: Si cambia la dirección de la interfaz aquí, asegúrese de actualizar también la URL correspondiente en
fastmcp_adapter.py
para que coincida. - Claude detectará y activará las herramientas del servidor Jadx MCP.
- Ahora puedes enumerar clases, obtener código fuente, inspeccionar métodos/campos y extraer código en vivo.
🧪 Herramientas proporcionadas
Herramienta | Descripción |
---|---|
list_all_classes | Obtener todos los nombres de clases descompilados |
search_class_by_name | Buscar clases que coincidan con una cadena |
get_class_source | Obtener el código fuente completo de una clase determinada |
search_method_by_name | Buscar métodos que coincidan con una cadena |
get_methods_of_class | Enumerar todos los nombres de métodos en una clase |
get_fields_of_class | Enumerar todos los nombres de campos en una clase |
get_method_code | Extraer código descompilado para un método |
🛠 Desarrollo
☕ Complemento de Java
El complemento de Java se encuentra en:
Utiliza la API JadxPlugin
( jadx.api.*
) para:
- Cargar clases y métodos descompilados
- Sirva datos estructurados a través de un servidor HTTP integrado
- Responder a los puntos finales
/invoke
y/tools
🚀 Instalación automatizada con tareas de Gradle
Puede utilizar la siguiente tarea de Gradle para crear e instalar el complemento en un solo paso:
Esto usa la CLI
jadx plugins
. Asegúrate de que Jadx esté instalado y disponible en tuPATH
.
Para otras tareas relacionadas con el complemento (desinstalar, habilitar/deshabilitar), consulte las definiciones de tareas en plugin/build.gradle
.
🔧 Instalación manual
Para crear el complemento:
Instale el JAR del complemento usando la CLI jadx plugins
:
Alternativamente, coloque el archivo .jar
compilado en su carpeta Jadx plugins/
, generalmente ubicada en: ~/.jadx/plugins/
Si coloca el JAR manualmente, también deberá habilitar el complemento a través de la GUI de Jadx o ejecutando:
Adaptador FastMCP de Python
El archivo del adaptador es:
Traduce las llamadas a la herramienta MCP de Claude a HTTP POST para el servidor de plugins de Jadx en ejecución. Asegúrate de que Jadx esté abierto antes de iniciar Claude.
🤝 Contribuyendo
¡Las relaciones públicas, las solicitudes de funciones y las extensiones de herramientas son bienvenidas!
Este proyecto es mantenido por Mobile Hacking Lab .
Créditos
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Un servidor que expone la API del descompilador Jadx a través de HTTP, lo que permite a Claude interactuar con el código Java/Android descompilado para enumerar clases, obtener el código fuente, inspeccionar métodos/campos y extraer código en vivo.
Related MCP Servers
- -securityAlicense-qualityThe Claude Dev Server enables direct interaction with the file system within a specified workspace, allowing users to perform file and directory operations and implement code artifacts in software development using natural language commands.Last updated -2PythonMIT License
- -securityFlicense-qualityA utility toolkit that enhances Claude's code interaction capabilities by providing seamless tools for Java code analysis, manipulation, and testing workflows.Last updated -2TypeScript
- -securityAlicense-qualityClaude MCP server that enables secure access to browse and read Android project files, validating authentic projects by checking for gradle configuration files.Last updated -PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that connects to a custom JADX fork (JADX-AI) and enables local LLMs to interact with decompiled Android app code for live reverse engineering assistance.Last updated -130PythonApache 2.0