Token导航 LogoToken导航

MCP Server · 开发工具

Java Class Analyzer MCP Server

一个基于Model Context Protocol (MCP)的Java类分析服务,可以扫描Maven项目依赖、反编译Java类文件、获取class方法列表等详细信息,并提供给LLM进行代码分析。适用于AI工具生成代码时提高准确性和可用性。

未说明官方级别未说明来源级核验工具 0
代码分析TypeScriptCursor

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
handsomestWei
提供方
handsomestWei

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

37

仓库热度

收录来源

2 个

MCP World

选型结论

Java Class Analyzer MCP Server 属于开发工具类 MCP Server,公开资料标注 0 个工具,通过传输方式未标注接入,适配 Cursor,没有现成的安装命令;接入前先确认权限范围。

分类

开发工具

传输方式

未说明

认证方式

无需认证

部署方式

仅本地运行

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

Java Class Analyzer MCP Server

一个基于Model Context Protocol (MCP)的Java类分析服务,可以扫描Maven项目依赖、反编译Java类文件、获取class方法列表等详细信息,并提供给LLM进行代码分析。

适用场景

Cursor等AI工具直接生成调用二方(内部调用)、三方包(外部调用)接口的代码,但因AI无法读取未在当前工程中打开的依赖源码,导致生成的代码错误频出,甚至出现幻觉式编码。

为解决此问题,一般会直接拷贝源码内容喂给LLM;或者先将源码文件放到当前工程内,再在对话中引用。

而使用本地反编译MCP方案最有效,能精准解析jar包中的类与方法,显著提升代码生成的准确性和可用性。

功能特性

  • 🚀使用方便:mcp服务基于TypeScript实现,使用npm打包,方便分发和安装,弱环境依赖。
  • 🔍 依赖扫描: 自动扫描Maven项目的所有依赖JAR包
  • 📦 类索引: 建立类全名到JAR包路径的映射索引
  • 🔄 反编译: 使用CFR工具(已内置有)实时反编译.class文件为Java源码
  • 📊 类分析: 分析Java类的结构、方法、字段、继承关系等
  • 💾 智能缓存: 按包名结构缓存反编译结果,支持缓存控制
  • 🚀 自动索引: 执行分析前自动检查并创建索引
  • ⚙️ 灵活配置: 支持外部指定CFR工具路径
  • 🤖 LLM集成: 通过MCP协议为LLM提供Java代码分析能力

使用示例

在IDE中注册mcp服务

在智能体对话中使用mcp

使用说明

mcp服务安装

全局安装(推荐)
npm install -g java-class-analyzer-mcp-server

安装后可以直接使用 java-class-analyzer-mcp 命令。

本地安装
npm install java-class-analyzer-mcp-server
从源码安装
git clone https://github.com/handsomestWei/java-class-analyzer-mcp-server.git
cd java-class-analyzer-mcp-server
npm install
npm run build

MCP服务配置

方法1:使用生成的配置(推荐)

运行以下命令生成配置模板:

java-class-analyzer-mcp config -o mcp-client-config.json

然后将生成的配置内容添加到你的MCP客户端配置文件中。

方法2:手动配置

参考以下配置示例,添加到MCP客户端配置文件中:

全局安装后的配置:

{
    "mcpServers": {
        "java-class-analyzer": {
            "command": "java-class-analyzer-mcp",
            "args": ["start"],
            "env": {
                "NODE_ENV": "production",
                "MAVEN_REPO": "D:/maven/repository",
                "JAVA_HOME": "C:/Program Files/Java/jdk-11"
            }
        }
    }
}

本地安装后的配置:

{
    "mcpServers": {
        "java-class-analyzer": {
            "command": "node",
            "args": [
                "node_modules/java-class-analyzer-mcp-server/dist/index.js"
            ],
            "env": {
                "NODE_ENV": "production",
                "MAVEN_REPO": "D:/maven/repository",
                "JAVA_HOME": "C:/Program Files/Java/jdk-11"
            }
        }
    }
}
参数说明
  • command: 运行MCP服务器的命令,这里使用 node
  • args: 传递给Node.js的参数,指向npm run build编译后的dist文件夹内文件
  • env: 环境变量设置
环境变量说明
  • NODE_ENV: 运行环境标识

- production: 生产环境,减少日志输出,启用性能优化 - development: 开发环境,输出详细调试信息 - test: 测试环境

  • MAVEN_REPO: Maven本地仓库路径(可选)

- 如果设置,程序会使用指定的仓库路径扫描JAR包 - 如果未设置,程序会使用默认的 ~/.m2/repository 路径

  • JAVA_HOME: Java安装路径(可选)

- 如果设置,程序会使用 ${JAVA_HOME}/bin/java 执行Java命令(用于CFR反编译) - 如果未设置,程序会使用PATH中的 java 命令

  • CFR_PATH: CFR反编译工具的路径(可选,程序会自动查找)

可用的工具

1. scan_dependencies

扫描Maven项目的所有依赖,建立类名到JAR包的映射索引。

参数:

  • projectPath (string): Maven项目根目录路径
  • forceRefresh (boolean, 可选): 是否强制刷新索引,默认false

示例:

{
  "name": "scan_dependencies",
  "arguments": {
    "projectPath": "/path/to/your/maven/project",
    "forceRefresh": false
  }
}
2. decompile_class

反编译指定的Java类文件,返回Java源码。

参数:

  • className (string): 要反编译的Java类全名,如:com.example.QueryBizOrderDO
  • projectPath (string): Maven项目根目录路径
  • useCache (boolean, 可选): 是否使用缓存,默认true。避免每次都重复生成。
  • cfrPath (string, 可选): CFR反编译工具的jar包路径。已内置有,可以额外指定版本。

示例:

{
  "name": "decompile_class",
  "arguments": {
    "className": "com.example.QueryBizOrderDO",
    "projectPath": "/path/to/your/maven/project",
    "useCache": true,
    "cfrPath": "/path/to/cfr-0.152.jar"
  }
}
3. analyze_class

分析Java类的结构、方法、字段等信息。

参数:

  • className (string): 要分析的Java类全名
  • projectPath (string): Maven项目根目录路径

示例:

{
  "name": "analyze_class",
  "arguments": {
    "className": "com.example.QueryBizOrderDO",
    "projectPath": "/path/to/your/maven/project",
  }
}

缓存文件

在当前工程,会生成以下缓存目录和文件。

  • .mcp-class-index.json: 类索引缓存文件
  • .mcp-decompile-cache/: 反编译结果缓存目录(按包名结构)
  • .mcp-class-temp/: 临时文件目录(按包名结构)

工作流程

  1. 自动索引: 首次调用analyze_class或decompile_class时,自动检查并创建索引
  2. 智能缓存: 反编译结果按包名结构缓存,支持缓存控制
  3. 分析类: 使用analyze_class或decompile_class获取类的详细信息
  4. LLM分析: 将反编译的源码提供给LLM进行代码分析

技术架构

核心组件

  • DependencyScanner: 负责扫描Maven依赖和建立类索引
  • DecompilerService: 负责反编译.class文件
  • JavaClassAnalyzer: 负责分析Java类结构
  • MCP Server: 提供标准化的MCP接口

依赖扫描流程

  1. 执行mvn dependency:tree获取依赖树
  2. 解析每个JAR包,提取所有.class文件
  3. 建立"类全名 -> JAR包路径"的映射索引
  4. 缓存索引到.mcp-class-index.json文件

反编译流程

  1. 根据类名查找对应的JAR包路径
  2. 检查缓存,如果存在且启用缓存则直接返回
  3. 从JAR包中提取.class文件到.mcp-class-temp目录(按包名结构)
  4. 使用CFR工具反编译.class文件
  5. 保存反编译结果到缓存.mcp-decompile-cache目录(按包名结构)
  6. 返回Java源码

故障排除

常见问题

  1. Maven命令失败

- 确保Maven已安装并在PATH中 - 检查项目是否有有效的pom.xml文件

  1. CFR反编译失败

- 确保CFR jar包已下载(支持任意版本号) - 检查Java环境是否正确配置 - 可通过cfrPath参数指定CFR路径

  1. 类未找到

- 程序会自动检查并创建索引 - 检查类名是否正确 - 确保项目依赖已正确解析

测试说明

构建项目

npm install
npm run build

测试工具使用

项目提供了独立的测试工具,可以直接测试MCP服务的各个功能,无需通过MCP客户端。

# 测试所有工具
node test-tools.js

# 测试特定工具
node test-tools.js --tool decompile_class --class com.alibaba.excel.EasyExcelFactory --project /path/to/project

# 不使用缓存
node test-tools.js --tool decompile_class --no-cache

# 指定CFR路径
node test-tools.js --tool decompile_class --cfr-path /path/to/cfr.jar

测试工具参数

  • -t, --tool : 指定要测试的工具 (scan|decompile|analyze|all)
  • -p, --project : 项目路径
  • -c, --class : 要分析的类名
  • --no-refresh: 不强制刷新依赖索引
  • --no-cache: 不使用反编译缓存
  • --cfr-path : 指定CFR反编译工具的jar包路径
  • -h, --help: 显示帮助信息

日志级别控制

通过 NODE_ENV 环境变量控制日志输出:

  • development: 输出详细调试信息
  • production: 只输出关键信息

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

Java类分析TypeScript本地部署Maven依赖扫描反编译工具LLM集成代码分析

支持客户端

Cursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Cursor 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Java Class Analyzer MCP Server

MCP World · 本页

0未说明未标注2 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Java Class Analyzer MCP Server 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Java Class Analyzer MCP Server 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Java Class Analyzer MCP Server 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Java Class Analyzer MCP Server 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Java Class Analyzer MCP Server 支持哪些客户端?

公开资料标注支持 Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP