antarikshc/perfetto-mcp

View on GitHub ↗

This is a Model Context Protocol (MCP) server that gets answers from your Perfetto Traces. It turns natural‑language prompts into focused Perfetto analyses.

214 ★30 forksPythonUpdated 4mo ago

What you need to know

MCP server that turns natural language into powerful Perfetto trace analysis — explain jank, diagnose ANRs, spot CPU hot threads, uncover lock contention and find memory leaks without writing SQL.

Install

brew install python@3.13 && brew install uv
claude mcp add perfetto-mcp --scope user -- uvx perfetto-mcp
Or set PERFETTO_MCP_TRACE_PROCESSOR_BIN_PATH to a local trace_processor_shell binary

Usage

  • Every tool needs trace_path (absolute path to a Perfetto trace) and process_name (target app)
  • Ask things like 'In the perfetto trace, I see FragmentManager taking 438ms — why?'
  • Optionally filter by time_range and tool-specific thresholds (min_block_ms, jank_threshold_ms, limit)

Key features

  • Natural language → PerfettoSQL; includes an execute_sql_query tool for custom analysis
  • ANR detection with severity classification and root-cause ranking
  • CPU utilization, main-thread hotspot, jank frames and frame performance tools
  • Thread contention, Binder IPC profiling, memory-leak detection and heap dominator analysis

Best for

Mobile/Android developers who need focused Perfetto trace analysis without writing query SQL.

Platforms: macOS · Linux · WindowsClients: Cursor · Claude Code · VS Code · Codex · MCP clients

Reviewed 2026-08-11

Topics

android-tracingmcpmodel-context-protocolperfetto
Stars
214★
Forks
30
Language
Python
License
Apache-2.0
Created
2025-09-10
Last push
2026-04-10