Labsco
MCP SERVER

v8 CPU Profile Decoder MCP

by vola-trebla

Hand your agent a 50MB .cpuprofile and get a ten-line answer about which function is burning the CPU.

Runtime Debugging & Crash AnalysisVerified
Summary
The one file an agent cannot read, turned into something it can.

A production .cpuprofile is millions of lines of tick counts and call frames — reading it directly fills the context window and still needs aggregation across the call tree to mean anything. This does the aggregation outside the model and returns the conclusion, including the before-and-after diff that tells you whether your fix worked.

What it is

An MCP server that decodes Node.js V8 CPU profiles locally and returns compact bottleneck summaries instead of raw profile JSON.

What you get
  • The hottest functions ranked by exclusive self time, with V8 internals and Node built-ins filtered out so only your code is listed
  • All callers of a named function, with how often each one invoked it
  • Hot functions mapped back to their original TypeScript source locations through source maps
  • Garbage collection overhead reported as a percentage of total profiling time
  • Two profiles compared before and after a change, returning per-function CPU time deltas
  • Event-loop overhead surfaced by identifying the V8 internal frames that represent async machinery
Requirements

A .cpuprofile file on disk — the one Node writes when you start it with CPU profiling turned on — and the path to it. No account and no key; the profile is decoded locally rather than uploaded.

Setup effort

One command — npx -y v8-cpu-profile-decoder-mcp