Rr MCP Server

MCP server for orchestrating multi-process rr debugging sessions

Local serverstdioPython

What is the Rr MCP server?

Most knowledge and memory work still happens through a UI a human drives. Rr MCP server moves it into the conversation instead. MCP server for orchestrating multi-process rr debugging sessions.

The short version

MCP (Model Context Protocol) server for orchestrating multi-process rr debugging sessions.

rr-mcp enables AI agents (like Claude) to debug multi-process applications using rr's record-and-replay capabilities. It provides:

The tools it exposes

The server publishes 14 tools. What each one is for:

  • traces_list — List all available rr recordings on the system
  • trace_info — Get metadata about a trace (creation time, binary, etc.)
  • trace_processes — List processes in a trace with PIDs and exec info
  • session_create — Create a replay session for a specific process. Supports pid (exec'd processes) and fork_pid (forked-without-exec children)
  • session_list — List all active replay sessions
  • session_close — End a session and free its resources
  • run_to_event — Jump to a specific rr event number
  • interrupt — Stop a running program
  • breakpoint_set — Set breakpoints by function, file:line, or address. Supports conditional (condition) and temporary breakpoints. Pending breakpoints are enabled
  • breakpoint_delete — Delete a breakpoint by number
  • breakpoint_list — List all breakpoints with their state
  • watchpoint_set — Break on memory writes, reads, or access to an expression

Getting it running

The server ships on PyPI as rr-mcp, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.

What it needs from you

  • Linux (rr only runs on Linux) - Python 3.11+ - rr installed and in PATH - An rr recording to debug

How it compares

This sits in the knowledge and memory group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Rr's toolset — traces_list, trace_info, trace_processes and 11 more — is a fair guide to whether it matches your workflow.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Rr.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
traces_listList all available rr recordings on the system
trace_infoGet metadata about a trace (creation time, binary, etc.)
trace_processesList processes in a trace with PIDs and exec info
session_createCreate a replay session for a specific process. Supports pid (exec'd processes) and fork_pid (forked-without-exec children)
session_listList all active replay sessions
session_closeEnd a session and free its resources
run_to_eventJump to a specific rr event number
interruptStop a running program
breakpoint_setSet breakpoints by function, file:line, or address. Supports conditional (condition) and temporary breakpoints. Pending breakpoints are enabled automatically for unloaded code
breakpoint_deleteDelete a breakpoint by number
breakpoint_listList all breakpoints with their state
watchpoint_setBreak on memory writes, reads, or access to an expression
catchCatchpoints for C++ throw/catch, syscalls (optionally filtered by name), and signals
backtraceCall stack with optional full mode (includes locals per frame)

How to install the Rr MCP server

{
  "mcpServers": {
    "rr": {
      "command": "uvx",
      "args": ["rr-mcp"]
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

  • Linux (rr only runs on Linux) - Python 3.11+ - rr installed and in PATH - An rr recording to debug

Example prompts to try

  • Use Rr to traces list.
  • Use Rr to trace info.
  • Use Rr to trace processes.

Frequently asked questions

It connects Rr to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (traces_list, trace_info, trace_processes, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Rr directly.