Connect AI assistants to your CodSpeed performance data using the Model Context Protocol.
The CodSpeed MCP server gives AI-powered tools direct access to your performance
data — benchmark runs, comparisons, and flamegraphs — so you can investigate
regressions, explore profiling results, and review performance changes without
leaving your editor or chat interface.The server follows the
Model Context Protocol (MCP) specification
and is hosted by CodSpeed at
Once connected, you can ask your AI assistant questions like:
“Explain the regression on the feat/my-great-feature branch.”
“Make my foo_bar function faster.”
“What are the hottest functions in the bench_foo benchmark?”
“Analyze the flamegraph for bench_parse and refactor the hot path.”
“Compare the flamegraphs of bench_serialize between main and
feat/new-encoder and explain what changed.”
“Find the bottleneck in bench_api_handler and open a PR to fix it.”
Because the MCP server runs inside coding agents, your assistant can
cross-reference flamegraph hot spots with your actual source code — then
suggest or apply optimizations directly.
Inspect a single performance run and its benchmark results. Shows benchmark
names, identifiers, and values. Accepts a run ID, branch, or defaults to the
latest run.
Compare two performance runs and return a markdown performance report. Shows
benchmark-level comparisons including improvements, regressions, and new or
missing benchmarks. When the two runs ran in different environments (CPU, OS,
runtime version, linked libraries), an “Environment Differences” section is
added first.
Retrieve the full structured result of a single benchmark in a performance
run: the instrument metrics (wall-time distribution, simulated time breakdown,
or memory allocation breakdown), known issues, and whether a flamegraph is
available.
Query and summarize a flame graph from a performance run. Returns hot spots
(functions with highest self time), the call tree, the most expensive threads,
and timing information for each function.Use the optional filters object to narrow the flame graph: pid / tid
restrict it to specific processes/threads (their intersection — use
list_threads to discover the available PIDs/TIDs), and root_function_name
re-roots it at a specific function for deeper exploration.
List the processes and threads recorded for a benchmark, with each thread’s
total execution time and its start offset from the beginning of the benchmark.
Use it to discover the PIDs/TIDs available before narrowing a flame graph with
query_flamegraph’s filters. Returns an empty list for benchmarks recorded
without per-thread data (e.g. single-threaded profiles).
The CodSpeed MCP server uses OAuth for authentication. When you first
connect, your MCP client will open a browser window where you log in to CodSpeed
and authorize access. The client stores the resulting token and refreshes it
automatically — no API keys to manage.
The MCP server has access to the same repositories and data as your CodSpeed
account.