Overview
Codaph provides a Model Context Protocol (MCP) server that exposes Codaph project data to Claude Code and other MCP-compatible clients. The MCP server runs over stdio and provides tools for:- Listing Codaph projects
- Querying project status
- Browsing sessions and contributors
- Reading timeline events
- Getting diff summaries
Quick Setup (Recommended)
For personal use, user-scope configuration is recommended:- Generates the correct
claude mcp addcommand - Executes it immediately with
--run - Adds Codaph to
~/.claude.json(user scope)
cwd or project_path parameters to target specific projects.
Manual Setup
Recommended command:
claude mcp add codaph codaph mcp
Tip: add `--run` to execute it for you
Why user scope: one setup works across repos
codaph mcp setup claude --scope user --run
# Or copy/paste the command:
claude mcp add codaph codaph mcp
Project-Scope Setup
For team/shared configurations, use project scope:.mcp.json in the project root. Share it via git:
codaph init also writes a template at .codaph/mcp/claude-code.json for manual merging.Available MCP Tools
Fromsrc/mcp-server.ts:197-451:
Project Management
codaph_projects_list
codaph_projects_list
Description: List Codaph projects in the local registry with saved provider/automation settings.Input: NoneOutput:
codaph_projects_add
codaph_projects_add
Description: Add a project path to the Codaph local project registry and set it as current.Input:Output:
codaph_projects_set_last
codaph_projects_set_last
Description: Set the current/last project used by Codaph MCP tool defaults.Input:Output:
Status & Sync
codaph_status
codaph_status
Description: Return Codaph sync/automation status for a project (same data as Output:
codaph status --json).Input:Session Browsing
codaph_sessions_list
codaph_sessions_list
Description: List captured sessions from the local Codaph mirror for a project/repo.Input:Output:
codaph_contributors_list
codaph_contributors_list
Description: List contributors/actors in the local Codaph mirror, optionally filtered to a session.Input:Output:
Timeline & Events
codaph_timeline_get
codaph_timeline_get
Description: Read timeline events from the local Codaph mirror (supports repo/session/thread/actor/time filters).Input:Output:
Diff & Changes
codaph_diff_summary
codaph_diff_summary
Description: Summarize file changes for a Codaph session from the local mirror.Input:Output:
Tool Usage Patterns
// List all Codaph projects
const projects = await codaph_projects_list();
// Add current working directory
const added = await codaph_projects_add({ path: process.cwd() });
// Set active project
const updated = await codaph_projects_set_last({ path: "/path/to/project" });
// Get status for current project
const status = await codaph_status({ cwd: "/path/to/project" });
// List recent sessions
const sessions = await codaph_sessions_list({
cwd: "/path/to/project",
limit: 10
});
// Get session timeline
const timeline = await codaph_timeline_get({
sessionId: "abc123...",
limit: 500
});
// Get file changes
const diff = await codaph_diff_summary({
sessionId: "abc123...",
pathFilter: "src/"
});
// List contributors
const contributors = await codaph_contributors_list({
sessionId: "abc123..."
});
Troubleshooting
MCP Server Not Found
MCP Server Not Found
Error:
command not found: codaphFix:- Ensure Codaph is installed globally:
npm i -g @codaph/codaph - Or use absolute path in
.claude.json: - For Bun source installs:
No Projects Found
No Projects Found
Issue: MCP tools return empty project list.Fix:
- Run
codaph initin your project directory first - Or use
codaph_projects_addtool withcwdparameter - Check registry:
codaph projects list
Permission Denied
Permission Denied
Error:
EACCES: permission deniedFix:- Ensure Codaph binary is executable:
chmod +x $(which codaph) - Check
.codaph/directory permissions - Verify Claude Code has read access to project directory
Invalid JSON Response
Invalid JSON Response
Issue: MCP client shows parse errors.Cause: Codaph MCP server supports both framed (Content-Length) and plain JSON stdio.Fix: Most clients auto-detect. If issues persist:
- Check Claude Code version supports MCP 2024-11-05 protocol
- Verify no extra output in stdio (check
CODAPH_DEBUGenv var is unset) - Test MCP server directly:
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | codaph mcp
Advanced Configuration
Custom MCP Server Args
Pass--cwd to default all tools to a specific project:
Multiple Projects
Register multiple Codaph servers for different projects:Debug Mode
Enable debug logging:.claude.json:
Protocol Details
Fromsrc/mcp-server.ts:14-835:
- Protocol Version:
2024-11-05 - Transport: stdio (supports both Content-Length framing and line-delimited JSON)
- Capabilities: tools only (no resources or prompts)
- Server Info:
- Name:
codaph - Version: from
package.json - Instructions: “Codaph MCP exposes local Codaph project registry, status, sessions, timeline, and diff summaries. Pass
cwdorproject_pathto target a repo.”
- Name:
Tool Result Format
All tools return:Error Handling
Errors returnisError: true: