jarp-mcp

Servidor MCP do Protocolo de Leitura de Arquivos Java - Dê aos agentes de IA visão de raio-X em código Java compilado, descompilando arquivos JAR/WAR/EAR e dependências Maven/Gradle

Documentação

JARP-MCP

Java Archive Reader Protocol — Dê aos agentes de IA visão de raio-X em código Java compilado

npm License MCP TypeScript

npm · GitHub


⚡ Comece em 10 Segundos

Adicione isto à configuração MCP do seu editor de IA:

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

É isso. Sem instalação. Sem configuração. Decompilador CFR incluído.

O que isso permite: Seu agente de IA (Claude, Cursor, Windsurf, Cline, etc.) agora pode:

  • Descompilar qualquer classe Java das suas dependências
  • Analisar estrutura de classes, métodos e campos
  • Ler o código-fonte real em vez de adivinhar

Reinicie seu editor de IA e tente: "Mostre-me o código-fonte de JpaRepository"


O Problema

Agentes de IA como Claude, GPT-4 e Cursor não conseguem ler código Java compilado. Ao trabalhar com Spring Boot, Maven ou qualquer projeto Java:

"Mostre-me como funciona JpaRepository.saveAll()" → O agente alucina a assinatura do método

"Quais parâmetros essa função de biblioteca interna recebe?" → O agente adivinha errado

"Por que essa dependência lança essa exceção?" → O agente não consegue ver o código-fonte

Desenvolvedores gastam de 5 a 10 minutos por classe descompilando manualmente com JD-GUI, copiando o código-fonte e colando no chat.


A Solução

JARP-MCP dá aos agentes de IA acesso instantâneo ao código-fonte Java descompilado das suas dependências Maven e Gradle.

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

Impacto

MétricaAntesDepois
Tempo para inspecionar uma classe5-10 min<2 segundos
Precisão das respostas da IA~60% (adivinhando)100% (código-fonte real)
Etapas manuais4+0

Ferramentas MCP

FerramentaO que faz
scan_dependenciesEscaneia seu projeto Maven/Gradle, constrói índice de classe → JAR
decompile_classRetorna o código-fonte Java completo para qualquer classe
analyze_classAnalisa estrutura de classe, métodos, campos, herança

Exemplo de Uso

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

O agente usa JARP-MCP para:

  1. Escanear todas as dependências em pom.xml
  2. Encontrar o JAR contendo JpaRepository
  3. Descompilá-lo usando CFR
  4. Retornar o código-fonte real

Resultado: Respostas precisas baseadas em código real, não em suposições.


Pilha Tecnológica

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

Detalhes-chave de Implementação

  • Zero dependências externas — Decompilador CFR incluído (JAR de 2,2MB)
  • Resolução inteligente de caminhos — Funciona com npx, npm install -g, desenvolvimento local
  • Suporte a Maven e Gradle — Analisa pom.xml e build.gradle
  • Cache inteligente — Primeira descompilação ~2s, subsequentes <100ms
  • Auto-indexação — Constrói índice de classes sob demanda se ausente

Instalação

Zero Configuração (Recomendado)

npx jarp-mcp

Nenhuma instalação necessária. Tudo está incluído.

Instalação Global

npm install -g jarp-mcp
jarp-mcp start

A partir do Código-Fonte

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

Configuração MCP

Configuração Rápida — Funciona com qualquer editor de IA compatível com MCP:

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

Configuração Específica por Plataforma

Claude Code (CLI)

Crie .claude/mcp-config.json na raiz do seu projeto 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

Configurações → Servidores MCP → Adicionar Servidor:

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

Ou em .cursorrules:

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

Postman (com Suporte a MCP)

  1. Abra o Postman → Configurações → Servidores MCP
  2. Adicione um novo servidor:
{
  "name": "jarp-mcp",
  "command": "npx",
  "args": ["-y", "jarp-mcp"]
}

Windsurf IDE

Em .windsurfrules ou configurações do projeto:

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

Cline (Extensão VSCode)

Em .clinerules ou configurações do projeto:

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

Desempenho

OperaçãoPrimeira ExecuçãoEm Cache
Escanear 100 JARs~30sN/A
Descompilar classe~2s<100ms
Analisar estrutura~2s<100ms

Mundo real: Projeto Spring Boot com 156 dependências, 12.458 classes

  • Escaneamento inicial: 45 segundos
  • Cada classe: ~1,5s na primeira vez, instantâneo depois

Links


Funciona com qualquer cliente MCP via STDIO — Claude, Cursor, Windsurf, Cline, Postman e mais.


Licença

Apache License 2.0 — veja LICENSE


Agradecimentos


Feito com ❤️ para a comunidade de desenvolvimento com IA