On this page
MCP Server
The bridge between your checkpoint data and AI tools. When Claude Code asks "what was I working on?", the MCP server answers by reading from your local SQLite database.
What it is
The MCP server implements the Model Context Protocol, which lets AI coding tools discover and call structured tools at runtime. KeepGoing registers as an MCP server so tools like Claude Code can call get_reentry_briefing or save_checkpoint the same way they call any other tool.
The server runs as a subprocess, communicating over stdio. It starts on demand when your AI tool needs it - no persistent background process required.
Exposed tools
get_reentry_briefing Returns a full re-entry briefing for the current project: last checkpoint, recent commits, session history. This is what populates Claude Code's project context at session start.
save_checkpoint Saves a checkpoint with summary, next step, and optional blocker. Called automatically by the Claude Code hooks after each Stop event.
get_current_task Returns the current active task and session info. Used by hooks and session-awareness features to track what's in progress.
get_decisions Returns detected architectural decisions for the current project. Requires Decision Detection (Pro).
get_momentum Returns momentum score and session data across projects. Used by the statusline and tray.
get_session_history Returns recent session logs with timestamps and summaries.
get_whats_hot Cross-project momentum summary sorted by recent activity.
get_context_snapshot Returns a compact JSON snapshot of current project context for handoff to other AI tools.
CLI delegation
When the MCP server starts, it checks whether a keepgoing CLI binary is available on PATH. If it is, tool calls are delegated to the CLI instead of handled in-process. This means the CLI version drives behavior - update the CLI to get new features without updating the MCP server.
If no CLI is found, the MCP server falls back to its own in-process handlers. All functionality is available either way, but the CLI path is preferred for correctness and schema compatibility.