
Jprofiler
@ej-technologies
About Jprofiler
No overview available yet
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"jprofiler": {
"command": "npx",
"args": [
"-y",
"@ej-technologies/jprofiler-mcp"
]
}
}
}Tools
9Prepare a profiling session by retrieving a JVM parameter to be added to a Java process call to record performance data with stack traces for the following subsystems: cpu, jdbc, jpa, http_server, http_client, mongo_db. The result is a JSON object containing a 'jvmParameter' to be added (quoted) to the Java process at startup. Add it verbatim and do not create or modify any files; the configuration is already set up for you. Run the Java process; the recording is saved automatically when the JVM terminates (or after the optional maximum duration). Then call check_status to access the data - do not load the saved snapshot file yourself.
Load an existing .jps, .hprof, or .jfr file for analysis. You must call check_status to check the loading progress and - after this returns 'data_ready' - retrieve data with the get_* tools. To compare two performance snapshots, load both in a single call: set filePath to the run to analyze and baselineFilePath to the baseline; The get_performance_hotspots tool then report the differences.
Attach to a running JVM by PID or to a JVM inside a Docker container. Records performance data for the following subsystems: cpu, jdbc, jpa, http_server, http_client, mongo_db until check_status is called with 'stopRecording: true'. You can use list_jvms to discover JVMs.
Check the status of a profiling session and discover which subsystems were recorded. Can be used to stop recording. When the data is ready provides information about the recorded subsystems (e.g. cpu, jdbc, http_client).
Retrieve a sorted list of top performance hotspots. Returns a JSON object containing an array of hotspots with timing data and expansion ids. Use expand_performance_hotspot to drill down.
Expand a performance hotspot or call tree. Returns a JSON object containing the back trace of a hot spot or the children of the call tree node with the provided id.
Dump the heap of a locally running JVM or of a JVM inside a Docker container to an HPROF file and load it for analysis. You must call check_status to check the loading progress and - after this returns 'data_ready' - retrieve data with get_heap_data. You can use list_jvms to discover JVMs.
Retrieve aggregated data of a heap dump. Can show biggest objects, retained class lists, and class histograms.
List locally running JVMs or JVMs running in a Docker container with their command line and PID. Use the information to call attach or create_heap_dump.
Overview
What is Jprofiler?
JProfiler is a Java performance profiler that integrates with AI coding assistants through the Model Context Protocol (MCP). It provides MCP tools for CPU hotspots with back traces, memory allocation analysis, JDBC query profiling, HTTP call tracing, and thread state inspection, and supports heap dump analysis across HPROF, JFR, and .jps snapshot formats.
How to use Jprofiler?
Install the @ej-technologies/jprofiler-mcp npm package and configure an MCP client (e.g., Claude Desktop) to point to the server script. The MCP server drives JProfiler's command-line tooling, allowing AI assistants to attach to running JVMs or prepare fresh profiling sessions, then guide the user from "profile this" to "here's the hotspot and the back trace."
Key features of Jprofiler
- CPU hotspot analysis with full back traces
- Memory allocation inspection and profiling
- JDBC query performance tracing
- HTTP call timing and tracing
- Thread state monitoring and inspection
- Supports HPROF, JFR, and
.jpssnapshot formats - Cross-platform: macOS, Windows, Linux
Use cases of Jprofiler
- Identify CPU hotspots and their calling contexts in a running Java application
- Diagnose memory allocation problems and track down leaks
- Profile slow JDBC queries and HTTP endpoint performance
- Inspect thread states to debug contention or deadlocks
- Let an AI coding assistant drive the profiling workflow from start to resolution
FAQ from Jprofiler
What runtime or dependencies does JProfiler require?
JProfiler is a commercial product from ej-technologies. It requires a JProfiler installation and the MCP server runs as a Node.js process; an MCP client (e.g., Claude Desktop) is needed to interact with the server.
Is JProfiler free to use?
JProfiler offers a free 10-day evaluation with no signup required to start. After the trial, a commercial license is needed.
What transport does the JProfiler MCP server use?
The server communicates over standard input/output (stdio), which is the standard transport for MCP-based tools.
Can it profile applications outside of a local machine?
The README does not specify remote profiling capabilities. The server is designed to attach to JVMs accessible from the local machine or to prepare local profiling sessions.
What types of profiling data can it analyze?
It can analyze live profiling sessions (CPU, memory, JDBC, HTTP, threads) as well as offline heap dump snapshots in HPROF, JFR, and JProfiler's own .jps format.
Frequently asked questions
What runtime or dependencies does JProfiler require?
JProfiler is a commercial product from ej-technologies. It requires a JProfiler installation and the MCP server runs as a Node.js process; an MCP client (e.g., Claude Desktop) is needed to interact with the server.
Is JProfiler free to use?
JProfiler offers a free 10-day evaluation with no signup required to start. After the trial, a commercial license is needed.
What transport does the JProfiler MCP server use?
The server communicates over standard input/output (stdio), which is the standard transport for MCP-based tools.
Can it profile applications outside of a local machine?
The README does not specify remote profiling capabilities. The server is designed to attach to JVMs accessible from the local machine or to prepare local profiling sessions.
What types of profiling data can it analyze?
It can analyze live profiling sessions (CPU, memory, JDBC, HTTP, threads) as well as offline heap dump snapshots in HPROF, JFR, and JProfiler's own `.jps` format.
Basic information
More Other MCP servers
Codelf
unbugA search tool helps dev to solve the naming things problem.
ICSS
chokcoco不止于 CSS

EverArt
modelcontextprotocolModel Context Protocol Servers
FastMCP v2 🚀
jlowin🚀 The fast, Pythonic way to build MCP servers and clients.
🪟 Windows-MCP
CursorTouchMCP Server for Computer Use in Windows
Comments