Loading...

apktool-mcp-server provides an automated interface to Apktool for Android APK analysis, integrating with LLMs via MCP for reverse engineering and vulnerability detection.
Boost this tool
Subscribe to listing upgrades or segmented pushes.
apktool-mcp-server provides an automated interface to Apktool for Android APK analysis, integrating with LLMs via MCP for reverse engineering and vulnerability detection.
apktool-mcp-server is relatively safe for static analysis and read-only operations. However, modifying and rebuilding APKs carries significant risk and should be done with caution in a controlled environment. Ensure that the source APK is trusted and that modifications are thoroughly reviewed.
Performance depends on the size and complexity of the APK file. Decoding large APKs can be time-consuming. Consider optimizing smali code for faster analysis.
The server itself is open-source and free to use. However, using LLMs via MCP may incur costs depending on the LLM provider's pricing model.
{
"mcpServers": {
"apktool-mcp-server": {
"command": "/<path>/<to>/uv",
"args": [
"--directory",
"</PATH/TO/>apktool-mcp-server/",
"run",
"apktool_mcp_server.py"
]
}
}
}build_apk()Builds an APK from a decoded APKTool project.
Can create a modified APK with potentially malicious code.
get_manifest()Gets the AndroidManifest.xml content from a decoded APK project.
Read-only access to the manifest file.
get_apktool_yml()Gets apktool.yml information from a decoded APK project.
Read-only access to the apktool.yml file.
list_smali_directories()Lists all smali directories in a project.
Read-only access to directory structure.
list_smali_files()Lists smali files in a specific smali directory, optionally filtered by package prefix.
Read-only access to file names.
get_smali_file()Gets content of a specific smali file by class name.
Read-only access to smali file content.
modify_smali_file()Modifies the content of a specific smali file.
Allows arbitrary code modification in smali files.
list_resources()Lists resources in a project, optionally filtered by resource type.
Read-only access to resource information.
get_resource_file()Gets Content of a specific resource file.
Read-only access to resource file content.
modify_resource_file()Modifies the content of a specific resource file.
Allows modification of resource files, potentially changing application behavior.
search_in_file()Searches for a pattern in files with specified extensions.
Read-only search operation.
clean_project()Cleans a project directory to prepare for rebuilding.
Deletes files within the project directory.
decode_apk()Decodes an APK file using APKTool, extracting resources and smali code.
Extracts content from APK, which could include malicious code.
None
hybrid
apktool-mcp-server is relatively safe for static analysis and read-only operations. However, modifying and rebuilding APKs carries significant risk and should be done with caution in a controlled environment. Ensure that the source APK is trusted and that modifications are thoroughly reviewed.
Autonomy depends on the specific MCP tool used. Some tools allow for destructive operations, so caution is advised.
Production Tip
Isolate the server in a dedicated environment to minimize the impact of potential security breaches.
Apktool is a reverse engineering tool for decoding and rebuilding Android APK files.
Model Context Protocol (MCP) is a protocol for interacting with language models.
Download the latest release from GitHub, install dependencies using uv, and configure the MCP server in your LLM client.
Python 3.10 or higher, Apktool installed and configured, and a compatible LLM client with MCP support.
Yes, but it's important to understand the risks involved and ensure that you have the necessary permissions.
It depends on how you use it. Read-only operations are generally safe, but modifying and rebuilding APKs can be risky.
The server is designed to work with any LLM that supports the Model Context Protocol (MCP).