mcp-jvm-diagnostics 0.1.12 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.js +5 -2
- package/build/reporting.js +1 -1
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -211,10 +211,13 @@ server.tool("analyze_heap_histo", "Parse jmap -histo output and detect memory le
|
|
|
211
211
|
server.tool("compare_heap_histos", "Compare two jmap -histo snapshots taken at different times to detect memory growth patterns, leak candidates, and new allocations. Captures what is growing between snapshots.", {
|
|
212
212
|
before: z
|
|
213
213
|
.string()
|
|
214
|
-
.describe("The FIRST (earlier) jmap -histo output"
|
|
214
|
+
.describe("The FIRST (earlier) jmap -histo output. Capture from a stable baseline — before the suspected leak window or after application startup has settled. " +
|
|
215
|
+
"Use `jmap -histo:live <pid>` to force a GC before capturing, ensuring unreachable objects are excluded and the snapshot reflects true live objects."),
|
|
215
216
|
after: z
|
|
216
217
|
.string()
|
|
217
|
-
.describe("The SECOND (later) jmap -histo output"
|
|
218
|
+
.describe("The SECOND (later) jmap -histo output. Capture after reproducing the suspected leak or after running under load. " +
|
|
219
|
+
"Allow at least 5-10 minutes between snapshots — short gaps may not accumulate enough growth to distinguish real leaks from normal allocation churn. " +
|
|
220
|
+
"Use the same `jmap -histo:live` flag as the before snapshot for a fair comparison."),
|
|
218
221
|
}, async ({ before, after }) => {
|
|
219
222
|
try {
|
|
220
223
|
const report = compareHeapHistos(before, after);
|
package/build/reporting.js
CHANGED
|
@@ -6,7 +6,7 @@ import { analyzeContention } from "./analyzers/contention.js";
|
|
|
6
6
|
import { detectDeadlocks } from "./analyzers/deadlock.js";
|
|
7
7
|
import { parseThreadDump } from "./parsers/thread-dump.js";
|
|
8
8
|
const PRODUCT_NAME = "jvm-diagnostics";
|
|
9
|
-
const TOOL_VERSION = "0.1.
|
|
9
|
+
const TOOL_VERSION = "0.1.12";
|
|
10
10
|
export const MISSING_LICENSE_INPUT_ERROR = "Missing required input: license_key";
|
|
11
11
|
export const MISSING_THREAD_DUMP_ERROR = "Missing required input: thread_dump";
|
|
12
12
|
export const MISSING_ENV_LICENSE_ERROR = "MCP_LICENSE_KEY environment variable is not set. generate_report requires a valid Pro license key. Free-tier analysis tools remain available without it.";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcp-jvm-diagnostics",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"description": "MCP server for JVM diagnostics — analyze thread dumps, detect deadlocks, parse GC logs, and get JVM tuning recommendations",
|
|
5
5
|
"mcpName": "io.github.dmitriusan/mcp-jvm-diagnostics",
|
|
6
6
|
"author": "Dmytro Lisnichenko",
|