Skip to main content
Glama
idachev

MCP Java Decompiler Server

by idachev

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CLASSPATHNoJava classpath for finding class files (used when no classpath is specified in tool calls).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
decompile-from-pathA

Decompiles a Java .class file from a given file path

decompile-from-packageB

Decompiles a Java class from a package name

decompile-from-jarA

Decompiles a Java class from a JAR file

Using mcp_javadc with Maven Repository

When you need to decompile Java classes from dependencies in the M2 repository, follow these steps:

Step 1: Find the JAR file location

First, search for the dependency JAR in the local Maven repository:

find ~/.m2 -name "*dependency-name*jar" | grep -v source | grep -v javadoc

Notes:

  • Replace dependency-name with the artifact name

  • Filter out source and javadoc JARs using grep

  • Look for the correct version based on the project's POM file

Step 2: Use the correct mcp_javadc function

Once you have the JAR path, use this function:

For specific class decompilation:

  • jarFilePath: The absolute path to the JAR (from Step 1)

  • className: Fully qualified class name to decompile

For contextual exploration: If needed, first try to find all available classes in the JAR: jar tf /path/to/the.jar | grep .class | sort

Example workflow:

  1. Read the POM file to identify dependency version

  2. Search the M2 repository for the JAR

  3. Use mcp_javadc to decompile relevant classes

  4. If multiple versions exist, select the one matching the project's version requirement

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct input source: file path, package name, and JAR file. The purposes are clearly separated with no overlap, so an agent can accurately select the correct tool.

Naming Consistency5/5

All tool names follow the exact same pattern: 'decompile-from-' followed by the source type. This consistent verb_noun structure makes the API predictable and easy to learn.

Tool Count5/5

With only 3 tools, the server is tightly scoped to the core decompilation task. Each tool earns its place by covering a different input method, and the count is well within the ideal range.

Completeness4/5

The server covers the primary decompilation sources (file, package, JAR), which handles most use cases. However, there is no batch operation or way to list classes within a package/JAR, requiring manual workarounds or repeated calls for larger tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues