Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Java Decompiler MCP Serverdecompile the jar file at /libs/app.jar and save the source to ./decompiled"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Java Decompiler MCP Server
一个基于 MCP (Model Context Protocol) 的 Java 反编译工具,使用 CFR 反编译器对 .class 和 .jar 文件进行反编译。
功能特性
✅ 单个文件反编译(.class / .jar)
✅ 多个文件批量反编译
✅ 目录递归扫描反编译
✅ 自定义输出目录
✅ 自动下载 CFR 反编译器
✅ 直接保存到文件系统(避免 token 限制)
✅ 实时进度显示
✅ 详细统计信息
✅ 多线程并发处理(大幅提升速度)
改进亮点
🚀 解决大文件/大量文件反编译问题
问题: 当反编译大量文件时,如果将所有结果作为字符串返回,可能超过 MCP 的 token 限制(例如 413,072 字符)。
解决方案:
直接保存到文件系统(推荐)
新增
save_to_file参数(默认true)反编译结果直接写入指定目录
仅返回摘要信息(成功数、失败数、输出路径等)
避免通过 MCP 传输大量内容
实时进度显示
新增
show_progress参数(默认true)显示当前处理进度:
[1/46] 处理中: Controller.class实时反馈处理状态
详细统计报告
成功/失败/跳过文件数
生成的 .java 文件总数
输出目录路径
清晰的格式化输出
使用示例
场景 1:反编译大量文件(推荐方式)
场景 2:反编译少量文件并查看内容
场景 3:静默批量处理
环境要求
Python >= 3.10
Java Runtime Environment (JRE)
uv (Python 包管理器)
安装
方式一:通过 uvx 直接使用(推荐)
无需安装,直接在 MCP 配置中使用(可让ai自动下载cfr-0.152.jar然后你手动配置路径):
方式二:本地开发
MCP 配置
方式一:使用 uvx(推荐,已发布到 PyPI)
在 .kiro/settings/mcp.json 或 claude_desktop_config.json 中添加:
方式二:本地开发模式
在 .kiro/settings/mcp.json 中添加:
⚠️ 本地开发模式需要将路径替换为实际的项目路径
项目地址
GitHub: https://github.com/RuoJi6/java-decompile-mcp
可用工具
1. decompile_file
反编译单个文件
参数:
file_path(必需): 要反编译的文件路径output_dir(可选): 输出目录,默认为文件所在目录下的decompiled文件夹save_to_file(可选): 是否直接保存到文件系统,默认true(推荐)
示例:
返回结果:
2. decompile_files
批量反编译多个文件(支持多线程)
参数:
file_paths(必需): 文件路径列表output_dir(可选): 输出目录save_to_file(可选): 是否直接保存到文件系统,默认trueshow_progress(可选): 是否显示详细进度,默认truemax_workers(可选): 最大并发线程数,默认4(设为1则单线程)
示例:
返回结果:
3. decompile_directory
反编译目录下所有 .class 和 .jar 文件(支持多线程)
参数:
directory_path(必需): 目录路径output_dir(可选): 输出目录recursive(可选): 是否递归子目录,默认truesave_to_file(可选): 是否直接保存到文件系统,默认trueshow_progress(可选): 是否显示详细进度,默认truemax_workers(可选): 最大并发线程数,默认4
示例:
返回结果:
4. download_cfr_tool
下载 CFR 反编译器
参数:
target_dir(可选): 下载目标目录,默认当前工作目录
5. check_cfr_status
检查 CFR 反编译器状态
6. get_java_version
获取 Java 版本信息
CFR 配置
CFR 反编译器查找顺序:
环境变量
CFR_PATH项目目录下的
cfr-*.jar自动下载(首次调用反编译工具时)
方式一:MCP 配置中指定(推荐)
在 mcp.json 的 env 中设置:
方式二:放到项目目录
将 cfr-*.jar 文件放到项目根目录,会自动识别。
方式三:自动下载
调用 download_cfr_tool 工具,会自动从镜像下载到项目目录。
手动运行测试
许可证
MIT License