IDE Diagnostics MCP
SkillDev toolsLets your agent check a running IntelliJ IDE for freezes or blocked threads.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the IDE Diagnostics MCP skill
About this capability
Inspect a running IntelliJ IDE for freezes or blocked threads via MCP.
What this skill tells your AI
The instructions your AI receives, as published by jetbrains/intellij-community in .agents/skills/ide-diagnostics-mcp/SKILL.md and read by ahel’s review.
Use the get_ide_diagnostics MCP tool to answer "what is this IDE doing right now?" from inside a running IntelliJ process.
This skill is for live IDE process evidence only. If the request is to diagnose an arbitrary issue, inspect repository code, analyze build/test output, or debug the MCP server itself, use the relevant debugging, testing, or code-investigation workflow instead.
Availability
The diagnostics toolset is hidden unless the IDE was started with:
-Didea.diagnostics.mcp.enabled=true
If get_ide_diagnostics is not available, tell the user the IDE must be restarted with that property. Do not confuse it with MCP server self-diagnostics; the property enables IDE process diagnostics exposed through MCP.
Capture Workflow
Start with a lightweight CPU sample without the raw dump:
{
"sampleMillis": 1000,
"topThreadCount": 25,
"includeRawDump": false
}
For freezes, blocked threads, or coroutine investigation, request a bounded raw dump:
{
"sampleMillis": 1000,
"topThreadCount": 50,
"includeRawDump": true,
"maxDumpChars": 200000,
"stripCoroutineDump": true
}
For action-specific performance questions, take one sample before or during the action and another while the symptom is visible. Compare topCpuThreads, blockedCountDelta, waitedCountDelta, and threads.stateCounts between samples.
Interpretation
process.processCpuLoadandprocess.systemCpuLoadare point-in-time process/system CPU load values;-1means the JVM cannot provide the metric.topCpuThreads[].cpuDeltaNanosranks threads by CPU consumed duringsampleMillis;-1means thread CPU time is unavailable.topCpuThreads[].stateis the JVMThread.State;RUNNABLEincludes Java execution and native calls, including native I/O.topCpuThreads[].isInNative,nativeFrame, andnativeOperationHinthelp identify native calls, but they are not OS wait-channel data.topCpuThreads[].stackTraceis a short stack snapshot for attribution, not a full profiler call tree.threads.stateCountsis useful for spotting manyBLOCKED,WAITING, orTIMED_WAITINGthreads.rawDumpis the IntelliJ thread dump text and may include coroutine dump content when coroutine dumping is enabled in the running IDE.rawDumpTruncated=truemeans repeat with a largermaxDumpCharsor ask for a narrower next step before drawing conclusions from missing tail content.coroutineDumpEnabled=falsemeans the tool cannot provide coroutine dump details beyond ordinary thread stacks.
Escalation
Use this MCP tool for low-overhead triage and evidence gathering. For root-cause CPU attribution, allocation pressure, lock profiling, native wait-state attribution, or long recordings, ask for JFR, async-profiler, or the IDE's standard performance capture workflow.
Signals
- GitHub stars
- 21k
- Forks
- 6k
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
ide-diagnostics-mcp- Source
- github.com/jetbrains/intellij-community