Jolokia MCP Server
About
Let LLMs manage your Java application via JMX/Jolokia 🌶️
Details
- Author
- tadayosi
- GitHub stars
- 16
- Downloads
- 302
- Categories
- Other, AI
Jump to
- List all MBeans registered in the connected JVM
- List operations and attributes for a given MBean
- Read and write MBean attributes
- Execute MBean operations with arguments
- Two deployment options: Standalone and JVM Agent
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Jolokia MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
You can use either the Standalone or JVM Agent distribution. For the Standalone server, download the runner jar and register it in your MCP host settings using java -jar or JBang. For the JVM Agent, download the javaagent jar and start your Java application with the -javaagent flag, which opens an MCP HTTP server at http://localhost:8779/mcp by default. When running the Standalone server, you can optionally pass a Jolokia URL (default http://localhost:8778/jolokia) as a positional parameter, and use the --sse flag to switch from stdio to HTTP transport.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"jolokia mcp server": {
"jolokia": {
"command": "java",
"args": [
"-jar",
"<path-to-the-runner-jar>/jolokia-mcp-0.5.1-runner.jar"
]
}
}
}
}
McpServers
{
"jolokia": {
"command": "java",
"args": [
"-jar",
"<path-to-the-runner-jar>/jolokia-mcp-0.5.1-runner.jar"
]
}
}
Jolokia MCP Server
MCP server for Jolokia, a JMX-HTTP bridge for Java applications. This MCP server enables an LLM to manage a Java application using JMX API via Jolokia.
<https://github.com/user-attachments/assets/624ec93b-da69-49b5-be8f-02f2ff14bd2e>
Distributions
Since version 0.4, the Jolokia MCP Server offers two distinct distributions to suit different deployment needs:
- Standalone MCP Server
- JVM Agent MCP Server
Standalone MCP Server
The Standalone MCP Server acts as a conventional MCP server; it is registered to the MCP host with either stdio or HTTP, and the MCP server itself communicates with your Java application, which must have a Jolokia agent attached, via JMX over HTTP.
To use the Standalone MCP Server, you'll first need to attach a Jolokia agent to your Java application. For detailed instructions on how to do this, please refer to the Jolokia manual:
<https://jolokia.org/reference/html/manual/agents.html>
JVM Agent MCP Server
In contrast, the JVM Agent MCP Server provides a streamlined, "drop-in" replacement for the standard Jolokia JVM Agent.
With this distribution, you simply attach the MCP Server's JVM Agent to your application instead of the standard Jolokia JVM Agent. The JVM Agent MCP Server then directly opens an HTTP port for the MCP protocol, effectively transforming your Java application itself into an MCP Server.
Features
This MCP server connects to a single JVM at startup and provides the following features on the connected JVM:
- List MBeans from the connected JVM
- List operations for a MBean
- List attributes for a MBean
- Read/write attributes of a MBean
- Execute operations on a MBean
Tools
This MCP server provides 6 tools.
- listMBeans
- List available MBeans from the JVM
- Output (List<String>): List of all MBean object names in the JVM
- listMBeanOperations
- List available operations for a given MBean
- Inputs:
- mbean (String): MBean name
- Output (String): JSON-formatted definitions of all available operations for the given MBean
- listMBeanAttributes
- List available attributes for a given MBean
- Inputs:
- mbean (String): MBean name
- Output (String): JSON-formatted definitions of all available attributes for the given MBean
- readMBeanAttribute
- Read an attribute from a given MBean
- Inputs:
- mbean (String): MBean name
- attribute (String): Attribute name
- Output (String): String representation of the given attribute's value or "null"
- writeMBeanAttribute
- Set the value to an attribute of a given MBean
- Inputs:
- mbean (String): MBean name
- attribute (String): Attribute name
- value (Object): Attribute value
- Output (String): String representation of the given attribute's previous value or "null"
- executeMBeanOperation
- Execute an operation on a given MBean
- Inputs:
- mbean (String): MBean name
- operation (String): Operation name
- args (Object[]): Arguments
- Output (String): String representation of the return value of the operation or "null"
Install
Standalone
Download the MCP server runner jar:
- jolokia-mcp-server-0.5.1-runner.jar
To install the Jolokia MCP server to a MCP host, add the following entry to the MCP settings:
{
"mcpServers": {
"jolokia": {
"command": "java",
"args": [
"-jar",
"<path-to-the-runner-jar>/jolokia-mcp-0.5.1-runner.jar"
]
}
}
}
Or if you prefer using JBang (no need for downloading the jar with this method):
{
"mcpServers": {
"jolokia": {
"command": "jbang",
"args": [
"org.jolokia.mcp:jolokia-mcp-server:0.5.1:runner"
]
}
}
}
JVM Agent
Download the MCP server javaagent jar:
- jolokia-mcp-agent-jvm-0.5.1-javaagent.jar
Then run your Java application with -javaagent option:
java -javaagent:jolokia-mcp-agent-jvm-0.5.1-javaagent.jar -jar your-app.jar
This would open the MCP HTTP transport at <http://localhost:8779/mcp>.
To register the Jolokia MCP server to a MCP host, add the following entry to the MCP settings:
{
"mcpServers": {
"jolokia": {
"httpUrl": "http://localhost:8779/mcp"
}
}
}
Run
Run it with java -jar:
java -jar jolokia-mcp-server-0.5.1-runner.jar [Jolokia URL]
Using JBang, you can directly run it with the Maven GAV (org.jolokia.mcp:jolokia-mcp-server:0.5.1:runner):
jbang org.jolokia.mcp:jolokia-mcp-server:0.5.1:runner
HTTP Transport
By default, this MCP server runs with stdio transport. To switch it to HTTP transport, use the --sse option:
java -jar jolokia-mcp-server-0.5.1-runner.jar --sse
The HTTP transport endpoint by default launches at <http://localhost:8080/mcp>.
Config Options
| Parameter/Option | Default | Description |
| ---------------- | ------- | ----------- |
| Positional parameter | http://localhost:8778/jolokia | The Jolokia endpoint URL the MCP server connects to |
| --sse | false (stdio) | Enable HTTP transport |
| -D= | | System properties |
The system properties that are relevant to the MCP server:
| System property | Default | Description |
| --------------- | ------- | ----------- |
| quarkus.http.port | 8080 | (SSE) The port for the SSE endpoint |
| quarkus.mcp.server.sse.root-path | mcp | (SSE) The root path for the SSE endpoint (http://localhost:8080/mcp/sse) |
| jolokia.mcp.url | http://localhost:8778/jolokia | Equivalent to the positional parameter |
| jolokia.mcp.preferred-http-method | Not set | Preferred HTTP method for Jolokia requests (GET or POST) |
Build
mvn clean install
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




