jarp-mcp

Servidor MCP del Protocolo de Lectura de Archivos Java: otorga a los agentes de IA visión de rayos X en código Java compilado mediante la descompilación de archivos JAR/WAR/EAR y dependencias de Maven/Gradle

Documentación

JARP-MCP

Java Archive Reader Protocol — Dale a los agentes de IA visión de rayos X sobre el código Java compilado

npm License MCP TypeScript

npm · GitHub


⚡ Comienza en 10 segundos

Añade esto a la configuración MCP de tu editor de IA:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Eso es todo. Sin instalación. Sin configuración. Descompilador CFR incluido.

Lo que esto permite: Tu agente de IA (Claude, Cursor, Windsurf, Cline, etc.) ahora puede:

  • Descompilar cualquier clase Java de tus dependencias
  • Analizar la estructura de clases, métodos y campos
  • Leer el código fuente real en lugar de adivinar

Reinicia tu editor de IA y prueba: "Muéstrame el código fuente de JpaRepository"


El Problema

Los agentes de IA como Claude, GPT-4 y Cursor no pueden leer código Java compilado. Al trabajar con Spring Boot, Maven o cualquier proyecto Java:

"Muéstrame cómo funciona JpaRepository.saveAll()" → El agente alucina la firma del método

"¿Qué parámetros toma esta función de biblioteca interna?" → El agente adivina mal

"¿Por qué esta dependencia lanza esta excepción?" → El agente no puede ver el código fuente

Los desarrolladores pasan de 5 a 10 minutos por clase descompilando manualmente con JD-GUI, copiando el código fuente y pegándolo en el chat.


La Solución

JARP-MCP da a los agentes de IA acceso instantáneo al código fuente Java descompilado de tus dependencias Maven y Gradle.

┌─────────────┐      ┌──────────────────┐      ┌─────────────────┐
│   LLM Agent │ ───▶ │   JARP-MCP       │ ───▶ │  Maven/Gradle   │
│  (Claude/   │      │   (MCP Server)   │      │  + .m2 Repo     │
│   Cursor)   │      │                  │      │                 │
└─────────────┘      └──────────────────┘      └─────────────────┘
                            │
                            ▼
                     ┌──────────────┐
                     │ CFR 0.152    │
                     │ Decompiler   │
                     └──────────────┘

Impacto

MétricaAntesDespués
Tiempo para inspeccionar una clase5-10 min<2 segundos
Precisión de las respuestas de IA~60% (adivinando)100% (código fuente real)
Pasos manuales4+0

Herramientas MCP

HerramientaQué hace
scan_dependenciesEscanea tu proyecto Maven/Gradle, construye índice de clase → JAR
decompile_classDevuelve el código fuente Java completo de cualquier clase
analyze_classAnaliza la estructura de clases, métodos, campos, herencia

Ejemplo de uso

// In your AI assistant chat:
"Scan my Spring Boot project and decompile JpaRepository"

El agente usa JARP-MCP para:

  1. Escanear todas las dependencias en pom.xml
  2. Encontrar el JAR que contiene JpaRepository
  3. Descompilarlo usando CFR
  4. Devolver el código fuente real

Resultado: Respuestas precisas basadas en código real, no en suposiciones.


Stack Tecnológico

JARP-MCP
├── Language: TypeScript 5.7
├── Runtime: Node.js 16+
├── Protocol: Model Context Protocol (MCP)
├── Decompiler: CFR 0.152 (bundled)
├── Build: tsc
├── Package: npm (zero-setup with npx)
└── License: Apache-2.0

Detalles clave de implementación

  • Cero dependencias externas — Descompilador CFR incluido (JAR de 2.2MB)
  • Resolución inteligente de rutas — Funciona con npx, npm install -g, desarrollo local
  • Soporte Maven y Gradle — Analiza pom.xml y build.gradle
  • Caché inteligente — Primera descompilación ~2s, siguientes <100ms
  • Auto-indexación — Construye el índice de clases bajo demanda si falta

Instalación

Configuración cero (Recomendado)

npx jarp-mcp

No se requiere instalación. Todo está incluido.

Instalación global

npm install -g jarp-mcp
jarp-mcp start

Desde el código fuente

git clone https://github.com/tersePrompts/jarp-mcp.git
cd jarp-mcp
npm install
npm run build

Configuración MCP

Configuración rápida — Funciona con cualquier editor de IA compatible con MCP:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Configuración específica por plataforma

Claude Code (CLI)

Crea .claude/mcp-config.json en la raíz de tu proyecto Java:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Claude Desktop

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Cursor IDE

Configuración → Servidores MCP → Añadir servidor:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

O en .cursorrules:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Postman (con soporte MCP)

  1. Abre Postman → Configuración → Servidores MCP
  2. Añade un nuevo servidor:
{
  "name": "jarp-mcp",
  "command": "npx",
  "args": ["-y", "jarp-mcp"]
}

Windsurf IDE

En .windsurfrules o configuración del proyecto:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Cline (Extensión de VSCode)

En .clinerules o configuración del proyecto:

{
  "mcpServers": {
    "jarp-mcp": {
      "command": "npx",
      "args": ["-y", "jarp-mcp"]
    }
  }
}

Rendimiento

OperaciónPrimera ejecuciónEn caché
Escanear 100 JARs~30sN/A
Descompilar clase~2s<100ms
Analizar estructura~2s<100ms

Caso real: Proyecto Spring Boot con 156 dependencias, 12,458 clases

  • Escaneo inicial: 45 segundos
  • Cada clase: ~1.5s la primera vez, instantáneo después

Enlaces


Funciona con cualquier cliente MCP sobre STDIO — Claude, Cursor, Windsurf, Cline, Postman y más.


Licencia

Apache License 2.0 — ver LICENSE


Agradecimientos


Construido con ❤️ para la comunidad de desarrollo impulsada por IA