DocsReplay CLI

The MCP server

Wire Replay into Claude Code, Claude Desktop, or Cursor so the assistant remembers everything you have already worked on.

These docs cover the CLI publishing path only. Claude Code has full support. Codex support is currently in beta.

Replay's CLI ships a Model Context Protocol server. Wire it into an assistant and that assistant gains a long memory: every past conversation on this machine, plus every conversation you have published to Replay, become tools it can search and read on demand.

Git history tells your assistant what changed. Replay tells it why — what you tried, what you rejected, how a bug was traced, why one approach won. That context usually dies the moment a session ends. The MCP server keeps it alive.

What changes for you

Three capabilities start working the moment the server is connected.

Past sessions on this machine become searchable. "What did we decide about caching last week?" stops being a question you have to answer from memory. The assistant pulls up the thread and reads it.

Your uploaded threads follow you across machines. A session you published from a laptop is reachable from a desktop, a server, a CI runner — anywhere the CLI is installed. You stop losing context every time you switch hardware.

The assistant can publish during the conversation. Tell it to upload the current session and hand back the URL. No context switch.

Connect the server

The server runs over stdio as replay mcp — a subcommand of the CLI binary you already have. There is no second process to manage and no port to configure.

Confirm the binary is on PATH:

which replay

Then authenticate, so the tools that talk to skillsync.com can do their job. Local-only tools work without it.

replay login

Claude Code

claude mcp add --transport stdio replay -- replay mcp

Three scopes are available — pick by how you want the server to spread:

  • Default — current project, just you.
  • --scope user — every project, just you.
  • --scope project — written to .mcp.json at the repo root, shared with the team via version control.

Confirm it loaded with claude mcp list, or /mcp from inside the REPL.

Claude Desktop

Add a replay entry under mcpServers in claude_desktop_config.json:

  • macOS~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "replay": {
      "command": "replay",
      "args": ["mcp"]
    }
  }
}

Quit Claude Desktop completely and reopen. The MCP indicator in the input box surfaces the new tools.

Cursor

Cursor reads from .cursor/mcp.json in your project or ~/.cursor/mcp.json for global. Same shape as Claude Desktop. Reload the window after saving.

Sharing it with a team

Project scope is the path that scales. Run:

claude mcp add --scope project --transport stdio replay -- replay mcp

That writes .mcp.json at the repo root. Commit it. Anyone who clones the repo and opens it in Claude Code picks the server up automatically — they only need the CLI installed and a Replay login.

What you can ask once it is wired up

The server tells the assistant when to reach for it, so you usually do not name it explicitly. A few prompts that exercise the new capability:

  • "Find the session where I debugged the billing webhook retries and read it in full."
  • "Why did we move auth into middleware? Search my past work and explain."
  • "Pull the thread where I chose Drizzle over Prisma and summarize the trade-offs."
  • "Upload the current session to my team workspace and give me the URL."

The interesting prompts are the "why" ones. Those are the questions git cannot answer.

The tools, in detail

The server exposes eight tools, grouped by what they do.

Reading what is on this machine

Local-only — no login required.

ToolPurpose
list_sessionsMetadata for sessions on this machine — id, agent, title, timestamp, project path. Scoped to the current project by default; pass all: true to look everywhere.
search_sessionsKeyword content search over local sessions. Ranked matches with snippets.
get_sessionThe full conversation for a local session id — questions, reasoning, tool calls, results.

Reading what you have published

These reach skillsync.com, so they cover other machines and older work no longer on disk.

ToolPurpose
search_replayKeyword content search over your uploaded threads.
get_replay_threadThe full conversation for a published thread by slug.

Publishing

ToolPurpose
upload_sessionPublishes a local session to Replay and returns its URL. Re-uploading the same session updates it in place. Pass workspace to publish into a team space.
list_workspacesLists the team workspaces you belong to. Use the returned slug with upload_session.

Confirming login

ToolPurpose
auth_statusReports whether you are logged in and as whom. The assistant calls this before any login-gated tool.

Troubleshooting

The server is not showing up. In Claude Code, run claude mcp get replay. In Claude Desktop, tail the log:

tail -n 50 -f ~/Library/Logs/Claude/mcp-server-replay.log

On Windows the same file lives under %APPDATA%\Claude\logs\.

spawn replay ENOENT. The MCP client could not find the replay binary on its PATH. Replace "replay" in your config with the absolute path from which replay:

{
  "mcpServers": {
    "replay": {
      "command": "/usr/local/bin/replay",
      "args": ["mcp"]
    }
  }
}

Replay or publishing tools failing. They require login. Run replay login and have the assistant call auth_status to confirm.

No results from search_sessions. The default scope is the project the assistant is running in. Pass all: true to look across every project, or open the assistant from the project where the session was recorded.