Gradle Class Finder MCP
Encuentra y descompila clases dentro de dependencias de Gradle.
GitHubPrueba este MCPPatrocinado
Documentación
Gradle Class Finder MCP
Un servicio de búsqueda de clases para proyectos Gradle basado en Model Context Protocol (MCP), que ayuda a buscar clases específicas en las dependencias de proyectos Gradle y obtener su código fuente.
Características
- Buscar clases específicas en las dependencias de proyectos Gradle
- Obtener el código fuente o el código decompilado de las clases
- Compatibilidad con la búsqueda de clases JDK
- Resolución inteligente de nombres de clases (compatible con nombres de clases simples)
- Reconocimiento inteligente y decompilación de clases Kotlin
Métodos de ejecución
Método 1: Ejecución nativa con Java
Requisitos previos
- JDK 17 o superior
- Gradle 8.5 o superior (opcional, el proyecto incluye Gradle Wrapper)
Compilar el proyecto
# 使用 Gradle Wrapper(推荐)
./gradlew shadowJar
# 或者使用系统安装的 Gradle
gradle shadowJar
Una vez completada la compilación, se generará el archivo gradle-class-finder-mcp.jar en el directorio build/libs/.
Ejecutar el servicio
# 直接运行 JAR 文件
java -jar build/libs/gradle-class-finder-mcp.jar
# 或者使用 Gradle 运行
./gradlew run
Método 2: Ejecución con Docker
Requisitos previos
- Docker 20.10 o superior
Compilar la imagen Docker
docker build -t gradle-class-finder-mcp .
Ejecutar el contenedor
# 基本运行
docker run gradle-class-finder-mcp
# 使用自定义内存设置
docker run -e JAVA_OPTS="-Xmx1g -Xms512m" gradle-class-finder-mcp
# 挂载本地项目目录(用于分析本地项目)
docker run -v /path/to/your/project:/workspace gradle-class-finder-mcp
Configuración de Claude Desktop
Agregue la siguiente configuración al archivo de configuración de Claude Desktop:
Configuración de ejecución nativa con Java
{
"mcpServers": {
"gradle-class-finder": {
"command": "java",
"args": ["-jar", "/path/to/gradle-class-finder-mcp.jar"]
}
}
}
Configuración de ejecución con Docker
{
"mcpServers": {
"gradle-class-finder": {
"command": "docker",
"args": ["run", "-i", "gradle-class-finder-mcp"]
}
}
}
Ejemplos de uso
Buscar una clase
使用工具 find_class 查找类:
- workspace_dir: /path/to/gradle/project
- class_name: com.example.MyClass
Obtener el código fuente
使用工具 get_source_code 获取源代码:
- jar_path: /path/to/library.jar
- class_name: com.example.MyClass
Variables de entorno
JAVA_OPTS: Configuración de parámetros JVM (por ejemplo:-Xmx512m -Xms256m)
Solución de problemas
Problemas comunes con la ejecución nativa con Java
-
No se encuentra la clase principal
- Asegúrese de compilar con la tarea
shadowJar, no con la tarea normaljar - Verifique que el archivo JAR exista en el directorio
build/libs/
- Asegúrese de compilar con la tarea
-
Error al resolver dependencias
- Asegúrese de que el proyecto de destino tenga una configuración de Gradle válida
- Verifique la conexión de red para asegurarse de que se pueda acceder al repositorio de Maven
Problemas comunes con la ejecución con Docker
-
Error de compilación
- Asegúrese de que el demonio de Docker esté en ejecución
- Verifique que haya suficiente espacio en disco
-
El contenedor no puede acceder a archivos locales
- Use el parámetro
-vpara montar correctamente el directorio local - Verifique los permisos de los archivos
- Use el parámetro
Guía de desarrollo
Estructura del proyecto
gradle-class-finder-mcp/
├── src/
│ └── main/
│ └── java/
│ └── com/opencare/mcp/
│ ├── GradleClassFinderMcpServer.java
│ ├── service/
│ ├── decompiler/
│ └── util/
├── build.gradle
├── Dockerfile
└── README.md
Desarrollo local
# 运行测试
./gradlew test
# 清理构建
./gradlew clean
# 构建并运行
./gradlew clean shadowJar run
Licencia
MIT License