Token导航 LogoToken导航

MCP Server · 开发工具

Java Class View MCP

一个基于MCP协议的Java类分析工具,提供类结构分析、依赖关系分析、源代码检索等功能,适用于Java代码审查和依赖管理。

stdio官方级别未说明来源级核验工具 10
代码审查Python依赖管理

快速开始

作者 / 组织
zksite
提供方
zksite

工具数量

10

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Java Class View MCP 属于开发工具类 MCP Server,公开资料标注 10 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

开发工具

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

pip install -r requirements.txt

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

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

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

  4. 4

    验证是否可用

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

接入前确认

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

详细介绍

Java JAR 探索器 MCP

一个模型上下文协议(MCP)服务器,提供全面的Java类分析和探索功能。该工具使AI助手能够检查Java类、分析依赖关系、搜索类,并从JAR文件和类路径中检索源代码。其功能包括方法级别的源代码提取、智能反编译和精确的代码边界检测。

实施原则

架构概述

Java JAR Explorer MCP 基于以下核心原则构建:

  1. MCP协议集成实现了模型上下文协议,以将Java分析能力作为标准化工具暴露出来,供AI助手使用。
  1. 异步处理使用Python的 asyncio 对于非阻塞操作,尤其是当执行像(以下列举的)这样的外部Java工具时 javap。
  1. 类路径感知分析自动检测并使用系统类路径,包括对自定义类路径的支持 JAVA_CLASSPATH 环境变量。
  1. 多源类别发现支持从多个来源进行班级分析:

- JAR 文件(包括嵌套的 JAR 文件) - 基于目录的类文件 - JRT 文件系统(Java 9+ 模块系统) - 系统类路径

  1. 强大的错误处理实现了全面的错误处理机制,当工具或类不可用时,能够优雅降级。

核心组件

JavaClassViewer 类

负责处理的主要引擎是:

  • 类路径解析与验证
  • 使用(某种方法或工具)进行的阶级结构分析 javap
  • 源代码提取和反编译
  • 方法级别的源代码提取,具备精确边界检测
  • 依赖分析
  • 跨多个来源进行班级搜索
数据模型
  • 班级信息表示完整的类结构,包括字段、方法和构造函数
  • 班级成员表示带有详细签名的类成员(字段、方法)
工具集成
  • javap类分析和字节码检查的主要工具
  • 罐子用于从JAR存档中提取源文件
  • Java用于类路径检测和验证
高级功能
  • 方法级分析提取并分析单个方法的源代码
  • 智能源检测自动检测原始代码与反编译后的源代码
  • 行级精确提取用于代码清理的精确方法边界检测
  • 签名分析可选的方法签名包含,以提供更好的上下文

快速入门

1. 克隆并设置

首先,克隆此仓库并安装所需的依赖项:

# Clone the repository
git clone https://github.com/zksite/java-class-view-mcp
cd java-class-view-mcp

# Install Python dependencies
pip install -r requirements.txt

2. MCP配置

要使用此MCP服务器,请在您的MCP客户端中添加以下配置:

{
  "java-jar-explorer": {
    "command": "python",
    "args": ["java-class-viewer.py"],
    "env": {
      "MAVEN_HOME": "",
      "JAVA_HOME": "",
      "JAVA_CLASSPATH": ""
    }
  }
}

环境变量配置

  • MAVEN_HOME(注:在中文语境中,我们通常不直接翻译变量名,而是保留其原样,但可以解释其含义为“Maven 安装目录”或“Maven 主目录”,不过在这里直接给出翻译形式,即“MAVEN_家目录”并不准确,因此保持原样更为合适。)Maven 安装路径(可选)
  • JAVA_HOMEJava 安装路径(必需)
  • JAVA_CLASSPATH(Java类路径)用于分析的自定义类路径(可选,如果未指定,将使用系统类路径)

示例配置

{
  "java-jar-explorer": {
    "command": "python",
    "args": ["java-class-viewer.py"],
    "env": {
      "MAVEN_HOME": "C:\\Program Files\\Apache\\maven",
      "JAVA_HOME": "C:\\Program Files\\Java\\jdk-17",
      "JAVA_CLASSPATH": "C:\\myproject\\target\\classes;C:\\myproject\\lib\\*.jar"
    }
  }
}

可用工具

MCP服务器为AI助手提供了以下工具:

1. 查看类结构

目的获取Java类的完整结构信息

参数:

  • class_name (字符串):完整限定类名(例如,'java.lang.String')

退货详细的班级结构,包括:

  • 类元数据(名称、包、修饰符、类型)
  • 带有类型和修饰符的字段
  • 带有签名和参数的方法
  • 构造函数
  • 继承关系
  • 内部类

2. 搜索类别

目的搜索符合特定模式的Java类

参数:

  • pattern (字符串):搜索模式(支持通配符和正则表达式)
  • search_type (字符串):搜索类型 - "名称", "包", "方法", "字段"
  • limit (整数):最大结果数量(默认:20)

回报包含位置信息的匹配班级列表

3. 分析类依赖关系

目的分析一个类的依赖关系

参数:

  • class_name (字符串):完全限定类名
  • depth (整数):分析深度(1=直接依赖项,2=二级,依此类推)

退货显示类关系的依赖树

4. 查找类的使用情况

目的在代码库中查找某个类的使用位置

参数:

  • class_name (字符串):完全限定类名
  • search_scope (字符串): 搜索范围 - "classpath"(类路径)、"jar"(JAR文件)、"directory"(目录)

退货类被引用的地点列表

5. 获取类层次结构

目的获取类的继承层次结构信息

参数:

  • class_name (字符串):完整类名

退货继承树显示:

  • 父类
  • 实现了的接口
  • 类类型(类、接口、枚举、注解)

6. 查找类位置

目的确定类文件的物理位置

参数:

  • class_name (字符串):完全限定类名

回报包含类文件的JAR文件或目录的路径

7. 获取类源码

目的获取类的源代码

参数:

  • class_name (字符串):完全限定类名
  • decompile (boolean): 如果源代码不可用时是否进行反编译(默认:true)

退货带有元数据的源代码:

  • 原始来源(如果JAR文件中存在)
  • 反编译后的源代码(使用javap)
  • 来源类型和位置信息

8. 获取类的字节码

目的获取类的详细字节码信息

参数:

  • class_name (字符串):完整类名

回报\javap\ 产生的详细字节码输出,包括:

  • 常量池
  • 方法字节码
  • 现场信息
  • 类元数据

9. 获取方法源码

目的从Java类中提取特定方法的源代码

参数:

  • class_name (字符串):完全限定类名
  • method_name (字符串):提取方法的名称
  • include_signature (布尔值):是否包含方法签名(默认:false)

退货方法源代码信息包括:

  • 方法源代码
  • 方法签名(如需)
  • 行号和位置信息
  • 源类型(原始或反编译)

10. 获取类路径信息

目的获取当前的类路径配置和统计信息

参数无

退货全面的类路径信息:

  • 环境变量(JAVA_CLASSPATH,JAVA_HOME)
  • 当前有效的类路径
  • 统计信息(JAR文件数量、目录数量、无效路径)
  • 详细路径分解

使用示例

基本阶级分析

# Get structure of a specific class
result = await view_class_structure("java.util.ArrayList")

# Search for classes by name pattern
results = await search_classes("*List*", "name", 10)

依赖分析

# Analyze direct dependencies
deps = await analyze_class_dependencies("com.example.MyClass", 1)

# Find where a class is used
usages = await find_class_usages("java.util.List", "classpath")

源代码检索

# Get complete class source code (with decompilation fallback)
source = await get_class_source("com.example.MyClass", True)

# Get specific method source code
method_source = await get_method_source("com.example.MyClass", "methodName", True)

# Get bytecode for detailed analysis
bytecode = await get_class_bytecode("com.example.MyClass")

配置

环境变量

  • JAVA_HOMEJava安装路径
  • JAVA_CLASSPATH自定义类路径(可选,覆盖系统类路径)

要求

  • Java 8或更高版本
  • Python 3.7及以上版本
  • javap 路径中可用的工具
  • 访问目标JAR文件和类路径

错误处理

该工具实现了强大的错误处理机制:

  • 当Java工具不可用时的优雅降级
  • 对于缺失的类或无效的类路径,提供清晰的错误信息
  • 源代码检索的备用机制
  • 输入参数和类路径条目的验证

性能考量

  • 异步操作可防止在长时间分析过程中发生阻塞
  • 类路径缓存减少了重复的文件系统操作
  • 可配置的搜索限制避免结果过多
  • 使用zipfile操作进行高效的JAR扫描

这款MCP服务器使AI助手能够执行复杂的Java代码库分析,从而更轻松地理解复杂的Java应用程序、分析依赖关系,并通过编程方式探索类之间的关系。

工具与能力

工具数量

10

资源数量

0

提示词数量

0

能力标签

Java分析Python本地部署代码审查依赖管理MCP协议源代码检索

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

典型使用场景

让助手直接读代码

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

在对话里跑命令

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

接进开发流程

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

选择建议

值得选的地方

  • 工具数量 10 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

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

MCP World · 本页

10stdio有1 个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 View MCP 怎么安装?

公开资料给出的安装命令是 pip install -r requirements.txt,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

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

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

Java Class View MCP 收费吗?

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

Java Class View MCP 需要 API Key 吗?

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

Java Class View MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP