MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

A
Apk Editor MCP Server

APK Editor MCP Server

Created 12/10/2025
Updated 3 days ago
Repository documentation and setup instructions

APK Editor MCP

一个强大的 Android APK 逆向工程 MCP (Model Context Protocol) 服务器,支持 APK 反编译、修改、重打包,以及快速 DEX 内存编辑。

特性

  • 快速 DEX 编辑 - 内存操作,无需解包,秒级打开大型 APK
  • Smali 转 Java - 内置 jadx-core,一键反编译
  • 智能搜索 - 搜索类名、字符串、方法调用
  • 实时修改 - 直接修改 smali 代码并保存
  • 批量操作 - 批量反编译整个包

安装

前置要求

安装步骤

# 克隆仓库
git clone https://github.com/your-repo/apk-editor-mcp.git
cd apk-editor-mcp

# 安装依赖
pip install -e .

# 配置 Windsurf/Cursor MCP

MCP 配置

~/.codeium/windsurf/mcp_config.json 中添加:

{
  "mcpServers": {
    "apk-editor": {
      "command": "python",
      "args": ["K:/path/to/APK-Editor-MCP-Server/mcp-server/run_server.py"]
    }
  }
}

工具列表

快速 DEX 编辑器 (推荐)

| 工具 | 说明 | |------|------| | fast_dex_open | 打开 APK 加载 DEX 到内存(秒开) | | fast_dex_list_classes | 列出所有类 | | fast_dex_search_class | 搜索类名(支持正则) | | fast_dex_get_class | 获取类的 smali 代码 | | fast_dex_summary | 获取类摘要(方法列表、代码长度) | | fast_dex_get_paged | 分页获取 smali(避免超 token) | | fast_dex_modify_class | 修改类的 smali 代码 | | fast_dex_save | 保存修改到 APK | | fast_dex_to_java | smali 转 Java 代码 | | fast_dex_deobfuscate | 反混淆并转 Java | | fast_dex_decompile_package | 批量反编译包下所有类 | | fast_dex_close | 关闭编辑器 |

APK 操作

| 工具 | 说明 | |------|------| | apk_decode | 反编译 APK 到目录 | | apk_build | 从目录构建 APK | | apk_info | 获取 APK 信息 | | apk_sign | 签名 APK(默认debug.keystore) | | apk_verify | 验证 APK 签名 | | fast_manifest_read | 快速读取 AndroidManifest.xml | | fast_manifest_modify | 快速修改 AndroidManifest.xml | | fast_manifest_patch | 快速修补 Manifest(正则替换) | | apk_merge | 合并分割 APK (XAPK/APKS) | | apk_protect | 保护/混淆 APK 资源 | | apk_refactor | 反资源混淆 |

文件操作

| 工具 | 说明 | |------|------| | file_list | 列出目录内容 | | file_read | 读取文件 | | file_write | 写入文件 | | file_copy | 复制文件 | | file_move | 移动文件 | | file_delete | 删除文件 |

Smali 操作

| 工具 | 说明 | |------|------| | smali_parse | 解析 smali 文件结构 | | smali_get_method | 提取指定方法 | | smali_replace_method | 替换方法实现 | | smali_insert_code | 在方法中插入代码 | | smali_gen_log | 生成 Log.d 调用代码 | | smali_gen_return | 生成 return 语句代码 |

ADB 工具

| 工具 | 说明 | |------|------| | adb_list_devices | 列出所有连接的设备 | | adb_install | 安装 APK 到设备 | | adb_uninstall | 卸载应用 | | adb_logcat | 获取设备日志 | | adb_screenshot | 截取设备屏幕 | | adb_device_info | 获取设备详细信息 | | adb_list_packages | 列出已安装的应用 | | adb_clear_data | 清除应用数据 |

资源编辑工具

| 工具 | 说明 | |------|------| | res_read_strings | 读取 strings.xml | | res_modify_string | 修改单个字符串 | | res_batch_modify_strings | 批量修改字符串 | | res_read_colors | 读取 colors.xml | | res_modify_color | 修改颜色值 | | res_search | 搜索资源内容 | | res_list_files | 列出资源文件 | | res_read_xml | 读取任意 XML 资源 | | res_modify_xml | 修改任意 XML 资源 | | res_add_string | 添加新字符串 | | res_delete_string | 删除字符串 |

搜索工具

| 工具 | 说明 | |------|------| | search_text | 搜索文本内容 | | search_string | 搜索 smali 字符串常量 | | search_method | 搜索方法调用 | | find_class | 查找类文件路径 | | list_classes | 列出所有 smali 类 |

使用示例

快速破解 VIP

# 1. 打开 APK
fast_dex_open("app.apk")

# 2. 搜索 VIP 相关类
fast_dex_search_class("VipInfo")

# 3. 查看类结构
fast_dex_summary("Lcom/example/VipInfo;")

# 4. 获取并查看代码
fast_dex_to_java("Lcom/example/VipInfo;")

# 5. 修改 isVip 方法返回 true
fast_dex_modify_class("Lcom/example/VipInfo;", new_smali_code)

# 6. 保存
fast_dex_save("app_cracked.apk")

搜索字符串

# 搜索登录相关
fast_dex_search_string("login")
fast_dex_search_string("password")

批量反编译

# 反编译整个包
fast_dex_decompile_package("com.example.app.*")

完整破解流程(含ADB测试)

# 1. 打开APK
fast_dex_open("app.apk")

# 2. 修改VIP验证
fast_dex_modify_class("Lcom/example/VipInfo;", new_smali_code)

# 3. 保存并签名
fast_dex_save("app_cracked.apk")
apk_sign(apk_path="app_cracked.apk")

# 4. 安装到设备测试
adb_list_devices()  # 查看连接的设备
adb_install(apk_path="app_cracked_signed.apk", replace=True)

# 5. 查看运行日志
adb_logcat(filter_tag="VipInfo", lines=50)

# 6. 清除数据重新测试
adb_clear_data(package_name="com.example.app")

项目结构

APK-Editor-MCP-Server/
├── mcp-server/           # Python MCP 服务器
│   ├── apk_editor_mcp/
│   │   ├── server.py     # MCP 服务器主文件
│   │   ├── fast_dex.py   # 快速 DEX 编辑器
│   │   ├── apk_editor.py # APK 操作工具
│   │   ├── file_utils.py # 文件操作
│   │   ├── smali_utils.py# Smali 操作
│   │   └── search_utils.py # 搜索工具
│   ├── run_server.py     # 启动脚本
│   └── requirements.txt
├── java-core/            # Kotlin/Java DEX 编辑核心
│   ├── src/main/kotlin/
│   │   └── com/apkeditor/dex/
│   │       ├── DexEditor.kt  # DEX 编辑器核心
│   │       └── Main.kt       # 命令行入口
│   ├── build.gradle.kts
│   └── build/libs/
│       └── dex-editor.jar    # 编译产物
├── libs/
│   ├── APKEditor.jar     # APK 编辑核心
│   ├── dex-editor.jar    # DEX 编辑器(内置 jadx-core)
│   └── apksigner.jar     # APK 签名工具
└── README.md

技术栈

  • Python - MCP 服务器
  • Kotlin - DEX 编辑器核心
  • dexlib2/smali - DEX 操作库
  • jadx-core - Java 反编译
  • APKEditor - APK 打包工具

License

MIT License

贡献

欢迎提交 Issue 和 Pull Request!

Quick Setup
Installation guide for this server

Install Package (if required)

uvx apk-editor-mcp-server

Cursor configuration (mcp.json)

{ "mcpServers": { "1600822305-apk-editor-mcp-server": { "command": "uvx", "args": [ "apk-editor-mcp-server" ] } } }