Get the FREE Ultimate OpenClaw Setup Guide →

APK-Editor

APK Editor MCP Server

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio 1600822305-apk-editor-mcp-server python K:/path/to/APK-Editor-MCP-Server/mcp-server/run_server.py \
  --env JAVA_HOME="Path to your Java 17+ JDK" \
  --env APKE_ANDROID_JAR="Optional: path to APKEditor.jar if needed by server"

How to use

APK Editor MCP is a Python-based MCP server that brings a powerful Android APK reverse engineering toolchain to your MCP environment. It combines fast in-memory DEX editing, Smali-to-Java decompilation (via an integrated jadx-core), and a comprehensive set of APK manipulation utilities, including manifest edits, signing support, and batch operations. With the provided tools, you can open an APK for in-memory editing, search for classes, strings, and method invocations, modify Smali, convert to Java, and save changes back to the APK. The server exposes a suite of commands such as fast_dex_open, fast_dex_search_class, fast_dex_modify_class, fast_dex_save, apk_decode, apk_build, apk_sign, and various Smali and resource operations. You can also perform ADB actions to test on devices, read and modify resources, and perform batch decompilation of packages. To use it, run the MCP server and interact with the listed tools through the MCP client interface, calling the appropriate command with parameters as demonstrated in the repository examples.

How to install

Prerequisites:

  • Python 3.10+
  • Java 17+
  • APKEditor.jar (or a compatible APK editing core path)

Installation steps:

# 1) Clone the MCP server repository
git clone https://github.com/your-repo/apk-editor-mcp.git
cd apk-editor-mcp

# 2) Install Python dependencies (editable install to reflect local changes)
pip install -e .

# 3) Ensure Java is available (Java 17+) and JAVA_HOME is set
# On Windows (example):
set JAVA_HOME=C:\Program Files\Java\jdk-17
# On macOS/Linux (example):
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

# 4) Prepare APKEditor core if required by the server (optional if bundled)
# e.g., place APKEditor.jar into the expected libs/ path or configure as needed by the server

# 5) Configure Windsurf/Cursor MCP configuration (example below) and start the server

Additional notes

Notes and tips:

  • The server runs Python-based MCP tooling; ensure your environment has access to Java 17+ and the APKEditor.jar for full APK build/sign capabilities.
  • The provided example mcp_config.json shows how to wire the Python server into Windsurf/Cursor MCP environments. Adjust the path to run_server.py to match your checkout location.
  • If you see token limits during large smali operations, use fast_dex_get_paged or split package decompilation with fast_dex_decompile_package to avoid token overload.
  • Make sure the environment variables (like JAVA_HOME) are correctly set so that jar signing and APK building work seamlessly.
  • When modifying Smali, always save with fast_dex_save and then re-sign the APK if you plan to install on a device.
  • For robust workflows, pair this MCP server with ADB tooling (adb_list_devices, adb_install, adb_logcat) to test changes in real devices.

Related MCP Servers

Sponsor this space

Reach thousands of developers