Skip to main content
Glama

JADX-MCP-SERVER

JADX-MCP-SERVER(Zin의 역엔지니어링 MCP 제품군의 일부)

⚡ 클로드와 같은 LLM을 사용하여 Android APK를 분석하기 위해 JADX-AI-MCP 플러그인과 통신하도록 구축된 완전 자동화된 MCP 서버입니다. 이를 통해 취약점을 발견하고, 매니페스트를 분석하고, 손쉽게 리버스 엔지니어링을 수행할 수 있습니다.

GitHub 기여자 JADX-AI-MCPGitHub 기여자 JADX-MCP-SERVERGitHub 모든 릴리스GitHub 릴리스(SemVer 기준 최신)최신 릴리스자바 11+파이썬 3.10+


지금 다운로드: https://github.com/zinja-coder/jadx-ai-mcp/releases

🤖 JADX-MCP-SERVER란 무엇인가요?

JADX MCP 서버는 MCP(모델 컨텍스트 프로토콜)를 통해 수정된 버전의 jadx-gui ( jadx-ai-mcp 참조)와 상호 작용하는 독립형 Python 서버입니다. 이를 통해 LLM이 디컴파일된 안드로이드 앱 컨텍스트와 실시간으로 통신할 수 있습니다.

🤖 JADX-AI-MCP란 무엇인가요?

JADX-AI-MCP는 Claude와 같은 LLM에 대한 라이브 리버스 엔지니어링 지원을 제공하기 위해 Model Context Protocol(MCP) 과 직접 통합되는 JADX 디컴파일러 용 플러그인입니다.

생각해 보세요: "디컴파일 → 컨텍스트 인식 코드 검토 → AI 추천" - 모두 실시간으로 진행됩니다.

데모를 보세요!

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

이는 두 가지 도구의 조합입니다.

  1. JADX-AI-MCP
  2. JADX MCP 서버

진 MCP 수이

현재 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() — AndroidManifest.xml 파일에 언급된 jadx에서 메인 액티비티를 가져옵니다.
  • get_main_application_classes_code() — AndroidManifest.xml에 정의된 패키지 이름을 기반으로 모든 주요 애플리케이션 클래스의 코드를 가져옵니다.
  • get_main_application_classes_names() — AndroidManifest.xml에 정의된 패키지 이름을 기반으로 모든 주요 애플리케이션 클래스의 이름을 가져옵니다.
  • get_android_manifest() — AndroidManifest.xml 콘텐츠를 검색하여 반환합니다.
  • get_strings() : strings.xml 파일을 가져옵니다.
  • get_all_resource_file_names() : 애플리케이션에 존재하는 모든 리소스 파일 이름을 검색합니다.
  • get_resource_file() : 리소스 파일 콘텐츠 검색

참고: Claude Desktop에서 테스트되었습니다. 향후 다른 LLM에 대한 지원도 테스트될 수 있습니다.

🗒️ 샘플 프롬프트

🔍 기본 코드 이해

지엑스피1

🛡️ 취약점 탐지

"Are there any insecure API usages in this method?" "Check this class for hardcoded secrets or credentials." "Does this method sanitize user input before using it?" "What security vulnerabilities might be introduced by this code?"

🛠️ 리버스 엔지니어링 도우미

"Deobfuscate and rename the classes and methods to something readable." "Can you infer the original purpose of this smali method?" "What libraries or SDKs does this class appear to be part of?"

📦 정적 분석

"List all network-related API calls in this class." "Identify file I/O operations and their potential risks." "Does this method leak device info or PII?"

🤖 AI 코드 수정

"Refactor this method to improve readability." "Add comments to this code explaining each step." "Rewrite this Java method in Python for analysis."

📄 문서 및 메타데이터

"Generate Javadoc-style comments for all methods." "What package or app component does this class likely belong to?" "Can you identify the Android component type (Activity, Service, etc.)?"

🛠️ 시작하기

여기서 읽어보세요

Ollama 및 Zin MCP 클라이언트를 사용하여 로컬 LLM에서 실행 - 권장

⚡ STDIO MCP 서버용의 가볍고 빠르며 간단한 CLI 기반 MCP 클라이언트로, Ollama와 MCP 서버를 실행하는 로컬 LLM 간의 간극을 메우고 연결해 줍니다.

지금 확인하세요: 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 파일에 대한 액세스 권한을 부여합니다.
  • [ ] 로컬 LLM을 지원하기 위한 MCP 클라이언트 빌드
  • [ ] 최종 목표 : 모든 안드로이드 리버스 엔지니어링 및 APK 수정 도구를 단일 MCP 서버에 연결하여 바이브만으로 리버스 엔지니어링 APK 파일을 가능한 한 쉽게 만들 수 있습니다.

기여자를 위한 참고 사항

  • JADX-AI-MCP 관련 파일은 여기에서 찾을 수 있습니다.
  • jadx-mcp-server 와 관련된 파일은 이 저장소에서만 찾을 수 있습니다.

🙏 크레딧

이 프로젝트는 @skylot 이 개발하고 관리하는 놀라운 오픈소스 안드로이드 디컴파일러인 JADX용 플러그인입니다. 모든 핵심 디컴파일 로직은 @skylot의 소유입니다. 저는 AI 기능을 갖춘 MCP 서버를 지원하기 위해 JADX를 확장했습니다.

📎 원본 README(JADX)

jadx의 원본 README.md는 참고 및 출처 표시를 위해 이 저장소에 포함되어 있습니다.

이 MCP 서버는 JADX-GUI의 확장성과 놀라운 안드로이드 리버스 엔지니어링 커뮤니티 덕분에 가능해졌습니다.

또한 Debian 기반 Linux용 Claude 데스크톱을 개발한 @aaddrick 에게도 큰 감사를 표합니다.

마지막으로 Model Context Protocol과 @FastMCP 팀을 개발한 @anthropics 에게 감사드립니다.

그리고 이와 같은 프로젝트가 가능하도록 라이브러리와 종속성을 만드는 모든 오픈소스 유지 관리자와 기여자.

감사 및 평가 배지 수령

감사를 담당하고 평가 배지를 제공해 주신 Mseep.net에 감사드립니다.

📄 라이센스

이 플러그인은 원래 JADX 저장소의 Apache 2.0 라이선스를 상속받습니다.

⚖️ 법적 경고

부인 성명

jadx-ai-mcpjadx_mcp_server 도구는 교육, 연구 및 윤리적 보안 평가 목적으로만 사용됩니다. 이 도구는 명시적이든 묵시적이든 어떠한 보증 없이 "있는 그대로" 제공됩니다. 사용자는 이러한 도구 사용 시 모든 관련 법률, 규정 및 윤리 지침을 준수할 전적인 책임을 집니다.

jadx-ai-mcp 또는 jadx_mcp_server 를 사용함으로써 귀하는 테스트 권한이 있는 환경(예: 귀하가 소유하거나 명시적으로 분석 권한을 부여받은 애플리케이션)에서만 이를 사용하는 데 동의합니다. 이러한 도구를 무단 리버스 엔지니어링, 지적 재산권 침해 또는 악의적인 활동에 사용하는 것은 엄격히 금지됩니다.

jadx-ai-mcpjadx_mcp_server 개발자는 이러한 도구의 사용 또는 오용으로 인해 발생하는 모든 피해, 데이터 손실, 법적 결과 또는 기타 결과에 대해 책임을 지지 않습니다. 사용자는 자신의 행동과 사용으로 인해 발생하는 모든 결과에 대해 전적인 책임을 집니다.

책임감 있게 사용하세요. 지적 재산권을 존중하세요. 윤리적인 해킹 관행을 준수하세요.


🙌 기여 또는 지원

  • 도움이 되셨나요? ⭐️를 눌러주세요.
  • 아이디어가 있으신가요? 이슈를 공개하거나 PR을 제출하세요.
  • 위에 뭔가를 추가하고 싶으신가요? DM이나 멘션 주세요. README에 추가해 드릴게요!

리버스 엔지니어링 및 AI 커뮤니티를 위해 ❤️로 제작되었습니다.

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

사용자 정의 JADX 포크(JADX-AI)에 연결하고 로컬 LLM이 라이브 리버스 엔지니어링 지원을 위해 디컴파일된 Android 앱 코드와 상호 작용할 수 있도록 하는 모델 컨텍스트 프로토콜 서버입니다.

  1. 지금 다운로드:
    1. 🤖 JADX-MCP-SERVER란 무엇인가요?
      1. 🤖 JADX-AI-MCP란 무엇인가요?
        1. 진 MCP 수이
          1. 현재 MCP 도구
          2. 🗒️ 샘플 프롬프트
          3. 🛠️ 시작하기
          4. Ollama 및 Zin MCP 클라이언트를 사용하여 로컬 LLM에서 실행 - 권장
          5. 🛣️ 향후 로드맵
          6. 기여자를 위한 참고 사항
          7. 🙏 크레딧
          8. 감사 및 평가 배지 수령
          9. 📄 라이센스
          10. ⚖️ 법적 경고
          11. 🙌 기여 또는 지원

        Related MCP Servers

        • -
          security
          A
          license
          -
          quality
          A Model Context Protocol server that enables building Android projects and running tests directly in Visual Studio Code through extensions like Cline or Roo Code.
          Last updated -
          1
          Python
          MIT License
        • -
          security
          A
          license
          -
          quality
          A Model Context Protocol server that enables Large Language Models to interact with Binary Ninja for reverse engineering tasks like viewing assembly code, decompiled code, renaming functions, and adding comments.
          Last updated -
          Python
          MIT License
          • Linux
          • Apple
        • -
          security
          F
          license
          -
          quality
          A server that exposes the Jadx decompiler API over HTTP, enabling Claude to interact with decompiled Java/Android code to list classes, fetch source code, inspect methods/fields, and extract code live.
          Last updated -
          42
          • Linux
          • Apple
        • A
          security
          A
          license
          A
          quality
          A Model Context Protocol server that fetches up-to-date, version-specific documentation and code examples from libraries directly into LLM prompts, helping developers get accurate answers without outdated or hallucinated information.
          Last updated -
          2
          112,887
          10,091
          JavaScript
          MIT License
          • Linux
          • Apple

        View all related MCP servers

        MCP directory API

        We provide all the information about MCP servers via our MCP API.

        curl -X GET 'https://glama.ai/api/mcp/v1/servers/zinja-coder/jadx-mcp-server'

        If you have feedback or need assistance with the MCP directory API, please join our Discord server