Skip to main content
Glama
kengrary

JVMind MAT Heap Dump Analyzer

dump_java_heap

Destructive

Capture a live heap dump from a running JVM and start Eclipse MAT parsing. Preview the target, output path, disk space, and timeout first, then confirm to execute.

Instructions

Capture a LIVE heap dump from a running JVM and start MAT parsing. First call with confirm=false (default) to preview the target, output directory, disk space, and timeout; call again with confirm=true to execute. A live dump triggers a Full GC and may pause the target JVM. The dump is written to output_dir (default: current working directory) and is automatically opened for MAT parsing. / 从运行中的 JVM 抓取 live 堆转储并自动开始 MAT 解析。先用默认 confirm=false 预览目标、输出目录、磁盘空间和超时,再用 confirm=true 执行。live dump 会触发 一次 Full GC,可能暂停目标 JVM;默认输出到当前目录。

Input Schema

NameRequiredDescriptionDefault
pidYes
confirmNo
timeoutNo
output_dirNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag this as destructive, non-idempotent, and not read-only, and so the description goes further by disclosing the exact risk: a live dump triggers a Full GC and may pause the target JVM. It also states the output location default (current working directory) and that the result is auto-opened for MAT parsing, which an agent cannot infer from the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well front-loaded: purpose first, then the confirm protocol, then the safety warning. The main waste is that the entire block is repeated verbatim in Chinese, roughly doubling length without adding information for an English-reading agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, non-idempotent tool this covers the essentials an agent needs to act safely, and the presence of an output schema removes any obligation to describe return values. The remaining gaps are minor: pid and timeout semantics, and what happens if the dump fails or disk space is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description carries the full burden, and it does well for confirm (default false, preview vs execute) and output_dir (defaults to cwd). However, pid is only gestured at via "preview the target," and timeout is mentioned solely as something previewed, with no units or meaning (per-operation? per-phase?) — half the parameters remain semantically thin.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource ("Capture a LIVE heap dump from a running JVM") plus the chained side effect ("start MAT parsing"). The emphasis on LIVE and "running JVM" implicitly separates it from open_heapdump, which operates on existing files, so an agent can tell the two apart without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It spells out a concrete two-phase calling protocol: call with confirm=false to preview target/output dir/disk space/timeout, then confirm=true to execute. That is strong contextual guidance, but it never names the alternative (open_heapdump, list_java_processes) for the case where the agent wants to attach to an existing dump or discover a pid first.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.