JADX-MCP-SERVER (часть пакета Zin для обратного проектирования MCP)
⚡ Полностью автоматизированный сервер MCP, созданный для взаимодействия с плагином JADX-AI-MCP для анализа APK-файлов Android с использованием LLM, таких как Claude, — выявляйте уязвимости, анализируйте манифесты и выполняйте обратную разработку без особых усилий.
Загрузить сейчас: https://github.com/zinja-coder/jadx-ai-mcp/releases
🤖 Что такое JADX-MCP-SERVER?
JADX MCP Server — это автономный сервер Python, который взаимодействует с модифицированной версией jadx-gui (см.: jadx-ai-mcp ) через MCP (Model Context Protocol). Он позволяет LLM взаимодействовать с декомпилированным контекстом приложения Android в реальном времени.
Related MCP server: Android ADB MCP Server
🤖 Что такое JADX-AI-MCP?
JADX-AI-MCP — это плагин для декомпилятора JADX , который напрямую интегрируется с Model Context Protocol (MCP) для обеспечения поддержки обратного проектирования в реальном времени с помощью LLM, таких как Claude .
Подумайте: «Декомпиляция → Контекстно-зависимый анализ кода → Рекомендации ИИ» — все в режиме реального времени.
Посмотрите демо!
https://github.com/user-attachments/assets/b65c3041-fde3-4803-8d99-45ca77dbe30a
https://github.com/user-attachments/assets/c184afae-3713-4bc0-a1d0-546c1f4eb57f
https://github.com/user-attachments/assets/6342ea0f-fa8f-44e6-9b3a-4ceb8919a5b0
Это комбинация двух инструментов:
СЕРВЕР MCP JADX
Зин МЦП Суи
Текущие инструменты MCP
Доступны следующие инструменты MCP:
fetch_current_class()— Получить имя класса и полный исходный код выбранного классаget_selected_text()— Получить текущий выбранный текстget_all_classes()— Список всех классов в проектеget_class_source()— Получить полный исходный код указанного классаget_method_by_name()— Извлечь исходный код методаsearch_method_by_name()— Метод поиска по классамget_methods_of_class()— Список методов в классеget_fields_of_class()— Список полей в классеget_smali_of_class()— Извлечь smali классаget_main_activity_class()— Извлекает основную активность из jadx, указанную в файле AndroidManifest.xml.get_main_application_classes_code()— извлекает код всех основных классов приложения на основе имени пакета, определенного в AndroidManifest.xml.get_main_application_classes_names()— извлекает имена всех основных классов приложения на основе имени пакета, определенного в AndroidManifest.xml.get_android_manifest()— извлекает и возвращает содержимое AndroidManifest.xml.get_strings(): извлекает файл strings.xmlget_all_resource_file_names(): извлечение всех имен файлов ресурсов, существующих в приложенииget_resource_file(): Извлечение содержимого файла ресурсов
Примечание: Проверено на Claude Desktop. Поддержка других LLM может быть протестирована в будущем.
🗒️ Примеры подсказок
🔍 Базовое понимание кода
🛡️ Обнаружение уязвимостей
🛠️ Помощники обратного инжиниринга
📦 Статический анализ
🤖 Модификация кода ИИ
📄 Документация и метаданные
🛠️ Начало работы
Запуск на локальном LLM с использованием Ollama и Zin MCP Client — рекомендуется
⚡ Легкий, быстрый, простой клиент MCP на основе CLI для серверов STDIO MCP, который заполнит пробел и обеспечит мост между вашими локальными LLM, работающими под управлением Ollama, и серверами MCP.
Проверьте сейчас: https://github.com/zinja-coder/zin-mcp-client
Демонстрация: выполнение проверки кода для локального поиска уязвимостей
https://github.com/user-attachments/assets/4cd26715-b5e6-4b4b-95e4-054de6789f42
🛣️ План действий на будущее
[x] Добавить поддержку apktool
[ ] Добавить поддержку кода Hermes (приложение ReactNative)
[ ] Добавить больше полезных инструментов MCP
[ ] Сделать так, чтобы LLM мог изменять код на JADX
[ ] Добавить шаблоны подсказок, предоставить llm доступ к файлам Android APK как к ресурсам
[ ] Создание клиента MCP для поддержки локального LLM
[ ] КОНЕЧНАЯ ЦЕЛЬ : Сделать так, чтобы все инструменты для обратной разработки и модификации APK-файлов Android подключались к единому серверу MCP, чтобы максимально упростить обратную разработку файлов APK исключительно из Vibes.
ПРИМЕЧАНИЕ для авторов
Файлы, относящиеся к JADX-AI-MCP, можно найти здесь.
Файлы, относящиеся к jadx-mcp-server, можно найти только в этом репозитории.
🙏 Кредиты
Этот проект представляет собой плагин для JADX, потрясающего декомпилятора Android с открытым исходным кодом, созданного и поддерживаемого @skylot . Вся основная логика декомпиляции принадлежит им. Я только расширил его для поддержки моего сервера MCP с возможностями ИИ.
Оригинальный файл README.md от jadx включен в этот репозиторий для справки и указания авторства.
Этот сервер MCP стал возможным благодаря расширяемости JADX-GUI и замечательному сообществу специалистов по обратной разработке Android.
Также огромное спасибо @aaddrick за разработку рабочего стола Claude для Linux на базе Debian.
И в заключение спасибо @anthropics за разработку Model Context Protocol и команде @FastMCP
И все разработчики и участники проектов с открытым исходным кодом, которые создают библиотеки и зависимости, делающие возможными подобные проекты.
Проверено и получен значок оценки
Благодарим Mseep.net за проведение аудита и предоставление значка оценки.
📄 Лицензия
Этот плагин наследует лицензию Apache 2.0 из оригинального репозитория JADX.
⚖️ Юридическое предупреждение
Отказ от ответственности
Инструменты jadx-ai-mcp и jadx_mcp_server предназначены исключительно для образовательных, исследовательских целей и оценки этической безопасности. Они предоставляются «как есть» без каких-либо гарантий, явных или подразумеваемых. Пользователи несут исключительную ответственность за обеспечение того, чтобы их использование этих инструментов соответствовало всем применимым законам, правилам и этическим нормам.
Используя jadx-ai-mcp или jadx_mcp_server , вы соглашаетесь использовать их только в средах, которые вы авторизованы для тестирования, например, в приложениях, которыми вы владеете или у вас есть явное разрешение на анализ. Любое ненадлежащее использование этих инструментов для несанкционированного обратного проектирования, нарушения прав интеллектуальной собственности или вредоносной деятельности строго запрещено.
Разработчики jadx-ai-mcp и jadx_mcp_server не несут ответственности за любой ущерб, потерю данных, правовые последствия или другие последствия, возникшие в результате использования или неправильного использования этих инструментов. Пользователи несут полную ответственность за свои действия и любые последствия, вызванные их использованием.
Используйте ответственно. Уважайте интеллектуальную собственность. Следуйте этичным методам взлома.
🙌 Внесите свой вклад или поддержите
Нашли полезным? Поставьте ⭐️
Есть идеи? Откройте тему или отправьте PR
Построили что-нибудь сверху? Напишите мне в личку или упомяните меня — я добавлю это в README!
Создано с ❤️ для сообществ, занимающихся обратной разработкой и ИИ.