Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

Maven Decoder

von salitabaVersion 1.3.2i★ –iLäuft auf deinem Computer
Name in der Registryio.github.salitaba/maven-decoder-mcp

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Lets AI agents read the real source of any Maven dependency, decompiled from ~/.m2 or Central.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Sonstiges
  • Das musst du eintragen: MAVEN_REMOTE_PASSWORD

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Das trägst du selbst ein: MAVEN_REPOSITORY, MAVEN_REMOTE_REPOS, MAVEN_REMOTE_USERNAME, MAVEN_REMOTE_PASSWORD, MAVEN_OFFLINE, MAVEN_AUTO_DOWNLOAD, MAVEN_DECODER_CACHE_DIR

Als geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.

Du brauchst

  • npmNode.js installiert (für den Befehl npx)

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "maven-decoder": {
      "command": "npx",
      "args": [
        "-y",
        "maven-decoder-mcp"
      ],
      "env": {
        "MAVEN_REPOSITORY": "your-value",
        "MAVEN_REMOTE_REPOS": "your-value",
        "MAVEN_REMOTE_USERNAME": "your-value",
        "MAVEN_REMOTE_PASSWORD": "your-value",
        "MAVEN_OFFLINE": "your-value",
        "MAVEN_AUTO_DOWNLOAD": "your-value",
        "MAVEN_DECODER_CACHE_DIR": "your-value"
      }
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add maven-decoder --env MAVEN_REPOSITORY=your-value --env MAVEN_REMOTE_REPOS=your-value --env MAVEN_REMOTE_USERNAME=your-value --env MAVEN_REMOTE_PASSWORD=your-value --env MAVEN_OFFLINE=your-value --env MAVEN_AUTO_DOWNLOAD=your-value --env MAVEN_DECODER_CACHE_DIR=your-value -- npx -y maven-decoder-mcp

Trag die leeren Werte ein, bevor du ihn startest.

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "maven-decoder": {
      "command": "npx",
      "args": [
        "-y",
        "maven-decoder-mcp"
      ],
      "env": {
        "MAVEN_REPOSITORY": "your-value",
        "MAVEN_REMOTE_REPOS": "your-value",
        "MAVEN_REMOTE_USERNAME": "your-value",
        "MAVEN_REMOTE_PASSWORD": "your-value",
        "MAVEN_OFFLINE": "your-value",
        "MAVEN_AUTO_DOWNLOAD": "your-value",
        "MAVEN_DECODER_CACHE_DIR": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "maven-decoder": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "maven-decoder-mcp"
      ],
      "env": {
        "MAVEN_REPOSITORY": "your-value",
        "MAVEN_REMOTE_REPOS": "your-value",
        "MAVEN_REMOTE_USERNAME": "your-value",
        "MAVEN_REMOTE_PASSWORD": "your-value",
        "MAVEN_OFFLINE": "your-value",
        "MAVEN_AUTO_DOWNLOAD": "your-value",
        "MAVEN_DECODER_CACHE_DIR": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Werte, die du selbst einträgst

  • MAVEN_REPOSITORY env
    Path to the local Maven repository. Defaults to ~/.m2/repository.
  • MAVEN_REMOTE_REPOS env
    Comma or whitespace separated list of remote Maven repository base URLs.
  • MAVEN_REMOTE_USERNAME env
    Username for authenticating against private remote Maven repositories.
  • MAVEN_REMOTE_PASSWORD geheim env
    Password or token for authenticating against private remote Maven repositories.
  • MAVEN_OFFLINE env
    Set to true to disable all network access and use only the local repository.
  • MAVEN_AUTO_DOWNLOAD env
    Whether to automatically download missing artifacts from remote repositories. Defaults to true.
  • MAVEN_DECODER_CACHE_DIR env
    Override directory used for decompilation and metadata caches.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto salitaba bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Sonstigesi

  • Mehr Sterne als 0 % der anderen 32466 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 36 % der anderen 32466 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 32466 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist Maven Decoder sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Das musst du eintragen: MAVEN_REMOTE_PASSWORD

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (1.3.2) kam vor 2 Monaten in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js, Python (uv) auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, HotCodePush

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Spec Driven Development

von formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Läuft auf deinem Computer★ 440MITAktualisiert vor 14 Monaten
Installieren

Remote Desktop Commander

von desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Läuft in der Cloud★ 211Aktualisiert gestern
Installieren

HotCodePush

von hotcodepush-team

Manage over-the-air (OTA) updates for React Native, Expo, Capacitor and Cordova apps.

Läuft in der CloudAktualisiert heute
Installieren

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

Maven Decoder MCP Server

Your agent guesses at library APIs it has never read. This makes it read them.

Lets AI agents read the actual source of any Maven dependency — decompiles jars from ~/.m2 or Maven Central, and diffs versions for breaking changes.

Ask an agent *"I'm upgrading org.jsoup:jsoup from 1.17.2 to 1.23.2 — what breaks?"* and without a way to read the jars it will answer from memory. With this server, compare_versions reads both jars and reports what actually changed:

1.17.2 → 1.23.2
Breaking changes45
Members removed31
Members added150
Classes with API changes47 of 115 compared

Members are compared as declared, so one that moved to a supertype is reported as removed even though it may still be callable. The tool states this in its own output.

It works on artifacts that have no sources jar too: extract_class_info falls back to javap and returns parsed fields, methods, and bytecode version — which is exactly the case for the internal artifacts in a corporate Nexus.

Try it in one command
npx skills add https://github.com/salitaba/maven-decoder-mcp --skill maven-code-search

That installs the maven-code-search agent skill, which tells your agent when to reach for these tools. For a raw MCP server setup instead, see Installation.

🚀 Features

Core Functionality
  • Jar File Analysis: Deep inspection of jar files including metadata, manifests, and structure
  • Dependency Resolution: Complete dependency tree analysis with transitive dependencies
  • Source Code Extraction: Extract source code from source jars or decompile bytecode
  • Class Information: Detailed class signatures, methods, fields, and annotations
  • Search Capabilities: Find classes, methods, and dependencies across all artifacts
  • Version Management: Compare versions, find dependents, and track version conflicts
Online Maven Support
  • Maven Central Search: Find artifacts and classes that are not installed locally
  • Remote Version Listing: See every published version, not just the ones you have
  • On-Demand Download: Fetch any artifact (jar, sources, POM) into a local cache
  • Transparent Fallback: Every analysis tool automatically downloads a missing artifact, so decompiling a dependency you never installed just works
  • Mirror Friendly: Point it at a corporate Nexus/Artifactory, with optional credentials
  • Offline Mode: A single env var restores fully local, network-free behavior
Advanced Features
  • Decompilation Support: Integrated support for multiple Java decompilers (CFR, Fernflower, Procyon)
  • Conflict Analysis: Detect and analyze dependency version conflicts
  • Repository Navigation: Browse and explore the local Maven repository structure
  • Metadata Parsing: Extract and parse Maven POM files and metadata
  • Service Discovery: Find and analyze Java services and SPI implementations
  • Response Management: Intelligent pagination and summarization for large responses
  • Method Extraction: Extract specific methods from large Java classes
  • Integrity Checking: Downloads are verified against the repository's SHA-1 checksums

📦 Installation

Prerequisites
  • Java 8+ (for decompilation features)
  • Maven local repository (~/.m2/repository)
  • One of: Python 3.8+, Node.js 14+, or Docker
🚀 Quick Install
One-Line Install (Recommended)
curl -fsSL https://raw.githubusercontent.com/salitaba/maven-decoder-mcp/main/install.sh | bash
📋 Installation Methods
Method 1: uvx (Recommended)
# Install uv (if not installed)

curl -Ls https://astral.sh/uv/install.sh | sh

Ensure your shell PATH is updated (restart shell or eval as printed by installer)

Run the server via uvx (isolated, fast, no venv needed)

uvx maven-decoder-mcp

Optional: pick a specific Python

uvx --python 3.12 maven-decoder-mcp

Method 2: Node.js/npm
# Install globally

npm install -g maven-decoder-mcp

Or install locally

npm install maven-decoder-mcp

Run the server

maven-decoder-mcp

or if installed locally: npx maven-decoder-mcp

Method 3: Docker
# Pull and run

docker run --rm -it \ -v ~/.m2:/home/mcpuser/.m2 \ -v $(pwd):/workspace \ ali79taba/maven-decoder-mcp:latest

Method 4: From Source (Development)
# Clone repository

git clone https://github.com/salitaba/maven-decoder-mcp.git cd maven-decoder-mcp

Option A: Using Virtual Environment

python3 -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate pip install -r requirements.txt pip install "git+https://github.com/modelcontextprotocol/python-sdk.git" ./setup_decompilers.sh

Option B: System-wide Installation (not recommended)

./setup_decompilers.sh

Windows

For a source checkout, use Python 3.10 or newer and a JDK on PATH. From the repository root, create and activate a virtual environment in PowerShell:

python -m venv .venv

.\.venv\Scripts\Activate.ps1 python -m pip install -e ".[dev]"

Point to your existing local Maven repository (drive-letter paths are supported)

$env:MAVEN_REPOSITORY = 'F:\data\repository' maven-decoder-mcp

In Command Prompt (cmd.exe), activate with .venv\Scripts\activate.bat and set the repository with set "MAVEN_REPOSITORY=F:\data\repository" instead. These environment settings apply to programs launched from that terminal; set them in your MCP client's environment when it launches the server separately.

Remote downloads use a separate cache, resolved in this order (empty values are skipped):

  1. MAVEN_DECODER_CACHE_DIR: the complete cache directory; no subdirectory is appended.
  2. XDG_CACHE_HOME: append maven-decoder-mcp\repository.
  3. LOCALAPPDATA: append maven-decoder-mcp\repository.
  4. Otherwise, ~/.cache/maven-decoder-mcp/repository under your home directory.

On Windows, this usually means %LOCALAPPDATA%\maven-decoder-mcp\repository; XDG_CACHE_HOME still takes precedence if set. The cache uses Maven's directory layout but stays separate from the real local repository so downloads do not interfere with Maven builds. Setting MAVEN_REPOSITORY does not change the cache location.

🔧 Configuration

For Cursor IDE

Add to your ~/.cursor/mcp_servers.json:

{

"maven-decoder": { "command": "uvx", "args": ["maven-decoder-mcp"] } }

For Other MCP Clients

The server runs as a standard MCP server and can be integrated with any MCP-compatible client.

🧠 AI Agent Skill

This repository includes a maven-code-search agent skill that tells AI coding agents when and how to use this MCP for searching installed Maven package code.

npx skills add https://github.com/salitaba/maven-decoder-mcp --skill maven-code-search

The skill is located at skills/maven-code-search and is ready for skills.sh indexing after the repository is pushed.

🛠️ Available Tools

Local Analysis
ToolDescription
list_artifactsList artifacts in Maven repository with filtering
analyze_jarAnalyze jar file structure and contents
extract_class_infoGet detailed information about Java classes
get_dependenciesRetrieve Maven dependencies from POM files
search_classesSearch for classes across all jars, optionally filtered by annotation
extract_source_codeDecompile and extract Java source code
extract_jar_resourceExtract text resources such as .proto files, services, and metadata
compare_versionsCompare two versions, including a public API diff and breaking changes
find_usage_examplesFind classes that reference a given class or method
get_dependency_treeGet complete dependency tree
find_dependentsFind artifacts that depend on a specific artifact
get_version_infoGet installed versions of an artifact (set include_remote to add published ones)
analyze_jar_structureAnalyze overall jar structure and metadata
extract_method_infoExtract specific method information from Java classes
Online (Maven Central)
ToolDescription
search_maven_centralSearch Maven Central for artifacts by name, coordinates, or contained class
get_remote_versionsList every version published remotely, flagging which are installed
download_artifactDownload an artifact (jar/sources/POM) into the local cache; accepts latest
Tool parameters
ToolParameterTypeDefaultDescription
list_artifactsgroup_idstring—Filter by group ID (e.g., 'org.springframework')
list_artifactsartifact_idstring—Filter by artifact ID (e.g., 'spring-core')
list_artifactsversionstring—Filter by version (e.g., '5.3.21')
list_artifactssort_bystringnameOrder results by: 'name' (group/artifact/version ascending, default), 'size' (largest jars first), or 'modified' (most recently modified first). Unknown values fall back to 'name'.
list_artifactslimitinteger50Maximum number of artifacts to return
list_artifactspageinteger1Page number for pagination
list_artifactsitems_per_pageinteger20Items per page
analyze_jargroup_id*string—Maven group ID
analyze_jarartifact_id*string—Maven artifact ID
analyze_jarversion*string—Maven version
analyze_jarinclude_bytecodebooleanFalseInclude bytecode analysis
analyze_jarinclude_manifestbooleanTrueInclude JAR manifest
analyze_jarsummarize_large_contentbooleanTrueSummarize large content automatically
extract_class_infogroup_id*string—Maven group ID
extract_class_infoartifact_id*string—Maven artifact ID
extract_class_infoversion*string—Maven version
extract_class_infoclass_patternstring—Pattern to match class names (regex supported)
extract_class_infoinclude_methodsbooleanTrueInclude method signatures
extract_class_infoinclude_fieldsbooleanTrueInclude field information
extract_class_infoinclude_bytecodebooleanFalseInclude verbose javap bytecode output for matched classes
extract_class_infopageinteger1Page number for pagination
extract_class_infoitems_per_pageinteger20Items per page
extract_class_infosummarize_large_contentbooleanTrueSummarize large content automatically
get_dependenciesgroup_id*string—Maven group ID
get_dependenciesartifact_id*string—Maven artifact ID
get_dependenciesversion*string—Maven version
get_dependenciesinclude_transitivebooleanFalseInclude transitive dependencies
get_dependenciespageinteger1Page number for pagination
get_dependenciesitems_per_pageinteger20Items per page
search_classesclass_namestring—Class name to search for (supports wildcards)
search_classespackage_patternstring—Package pattern to filter by
search_classesannotationstring—Search for classes with specific annotation
search_classescase_sensitivebooleanTrueMatch class_name and package_pattern case-sensitively. Set false for a case-insensitive search (e.g. 'arraylist' matches 'ArrayList').

| search_classes | limit | integer | 100 | Maximum

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen