MCP App Store
by KeenEthics

Overview

CodSpeed helps users optimize code with measured performance data. Inspect benchmark runs, compare changes, and analyze flamegraphs to find bottlenecks and verify improvements. The plugin also includes skills for setting up benchmarks and guiding iterative optimization.

Tools

compare_runs

ChatGPT
Compare two CodSpeed performance runs and return a markdown performance report. Comparing a local or Wizard run compares only the benchmarks each run measured: a benchmark only one run measured is listed as new or missing. Between two CI runs, a benchmark a run skipped is compared using the result it carried over from an earlier run, as on the CodSpeed compare page. Shows benchmark-level comparisons including improvements, regressions, new/missing benchmarks, and formatted values. When hardware or software environment differences are detected between the two runs (e.g., different CPU, OS, language runtime version, or linked libraries), an "Environment Differences" section appears first in the report. Each difference lists exactly the benchmarks whose base and head ran across it and explains inline how that kind of difference affects each instrument; benchmarks compared on matching runners are explicitly called out as unaffected. Rely on this attribution rather than general intuition about which instrument an environment change 'should' affect: it reflects where the runners actually differed. When the two runs were measured in ways that make their results not directly comparable (e.g., a runner major-version bump that changes how measurements are computed), only a "Runs Not Directly Comparable" warning is returned — the summary and per-benchmark results are omitted because the comparison would be misleading. The report header includes comparison_url, the CodSpeed page for this comparison. Give it to the user when they want to look at the results themselves, for example to open flame graphs or to share the comparison. Use this to understand the performance impact between two runs (e.g., a PR head vs its base).

get_benchmark_result

ChatGPT
Retrieve the full structured result of a single benchmark in a CodSpeed run: instrument metrics, known issues, and whether a flamegraph is available. Use it when a single aggregated value from get_run is not enough — e.g. to inspect a memory allocation breakdown, a simulation time breakdown, or a wall-time distribution (median/stdev/outliers). The metrics returned depend on the benchmark's runner mode (WallTime, Simulation, or Memory); the headline metric to compare across runs is minSeconds, cpuTotalSeconds, or peakMemoryBytes respectively. To quantify a regression, fetch the base and head runs and compare, or use compare_runs for a ready-made diff.

get_run

ChatGPT
Inspect a single CodSpeed performance run and its benchmark results. Shows benchmark names, URIs, and values. Use this to discover what benchmarks exist. If run_id is provided, inspects that specific run. If branch is provided, inspects the latest completed run on that branch. If neither is provided, inspects the latest completed run on the default branch.

list_repositories

ChatGPT
List all CodSpeed-enabled repositories that you have access to. Returns repository names, visibility, and descriptions.

list_runs

ChatGPT
List recent CodSpeed performance runs for a repository. Returns run IDs, commit hashes, status, event type (push, pull_request, local, ...), branch, and PR information. Use this to discover run IDs that can be passed to other tools like compare_runs or query_flamegraph.

list_threads

ChatGPT
List the processes and threads recorded for a benchmark in a CodSpeed run, with each thread's total cost (CPU time or allocated bytes — see unit) and its start offset from the beginning of the benchmark. Use this to discover the PIDs/TIDs available before narrowing a flame graph: pass the PIDs/TIDs of interest to query_flamegraph's filters to focus it on those threads. Returns an empty list for benchmarks recorded without per-thread data (e.g. single-threaded profiles).

query_flamegraph

ChatGPT
Query and summarize a flame graph from a CodSpeed performance run. This tool fetches flame graph profiling data for a specific benchmark in a run and returns a markdown summary including: hot spots (by self time for time profiles, or by total allocated bytes with a direct allocation site for memory), call tree (hierarchical view of function calls), the most expensive threads, and cost information for each function. The cost depends on the runner mode: - Simulation/WallTime: CPU time - Memory: allocated bytes The Calls column counts the call paths of a function in the flame graph; the Allocations column counts its allocations. Use filters.root_function_name to re-root the flame graph at a specific function for deeper exploration of that part of the call tree, and filters.pid / filters.tid to restrict it to specific processes/threads (use list_threads to discover them first). flamegraph_url opens this benchmark's flame graph in the CodSpeed app, without the filters. Share this link exactly as returned: its double encoding is expected.

Example Prompts

Click any prompt to copy it.

Similar Apps