Setup
The Model Context Protocol (MCP) is an open standard that lets AI assistants call tools hosted by external servers. Deciduous ships with a built-in MCP server that exposes 31 tools for reading, writing, and analyzing your decision graph. When connected, Claude can search decisions, trace chains, and log new nodes directly – no copy-pasting CLI output.
Claude Code
One command, project-level config:
MCP configured for Claude Code!
Updated /Users/you/project/.claude/settings.local.json
Added mcpServers.deciduous entry.
Claude Code will automatically discover and use the MCP server.
That’s it. Restart Claude Code and the tools appear as mcp__deciduous__*. The command writes to .claude/settings.local.json in your project directory, which is gitignored by default – each developer gets their own config.
Claude Desktop
Claude Desktop needs absolute paths because it doesn’t inherit your shell PATH:
MCP configured for Claude Desktop!
Config file ~/Library/Application Support/Claude/claude_desktop_config.json
Binary /Users/you/.cargo/bin/deciduous
Database /Users/you/project/.deciduous/deciduous.db
Restart Claude Desktop to pick up the new configuration.
The command auto-detects your binary path and the .deciduous/deciduous.db location in the current directory. It writes to the platform-specific Claude Desktop config file:
| Platform | Config path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
| Windows | %APPDATA%/Claude/claude_desktop_config.json |
If other MCP servers are already configured, deciduous merges its entry without disturbing them. You must restart Claude Desktop after running this command.
Manual Setup
If you prefer to inspect the config before writing it, use --print:
Copy the relevant parts into your config file manually.
User-Level vs Project-Level Config
| Claude Code | Claude Desktop | |
|---|---|---|
| Config location | .claude/settings.local.json (project) | Platform config directory (user) |
| Scope | One project | All conversations |
| DB path | Auto-detected from cwd | Set via DECIDUOUS_DB_PATH env var |
| Binary path | Uses PATH lookup (deciduous) | Absolute path (e.g., /Users/you/.cargo/bin/deciduous) |
| Git tracking | .claude/settings.local.json is gitignored | N/A |
Claude Code uses project-level config. Each project has its own .deciduous/deciduous.db, and the MCP server automatically finds it from the working directory.
Claude Desktop uses user-level config. You point DECIDUOUS_DB_PATH at a specific database file, and every conversation in Claude Desktop reads and writes to that same database. This is the foundation of the Master Memory pattern.
Generated Config
For Claude Code, the generated JSON is minimal – no absolute paths needed:
{
"mcpServers": {
"deciduous": {
"command": "deciduous",
"args": ["mcp", "serve"]
}
}
}
For Claude Desktop, absolute paths and the database env var are included:
{
"mcpServers": {
"deciduous": {
"command": "/Users/you/.cargo/bin/deciduous",
"args": ["mcp", "serve"],
"env": {
"DECIDUOUS_DB_PATH": "/Users/you/project/.deciduous/deciduous.db"
}
}
}
}
Troubleshooting
Binary not found
Claude Desktop does not inherit your shell PATH. If you see errors about the command not being found, verify the absolute path:
which deciduous
# /Users/you/.cargo/bin/deciduous
Use that full path in the config’s command field.
Database not found
If deciduous mcp setup claude-desktop warns that .deciduous/deciduous.db was not found, run deciduous init in your project directory first. The MCP server will create the database on first use if it doesn’t exist, but init also sets up Claude integration files.
DECIDUOUS_DB_PATH
The DECIDUOUS_DB_PATH environment variable tells the MCP server which SQLite database to use. This is only needed for Claude Desktop (where there is no working directory context). Claude Code runs in your project directory and finds the database automatically.
You can override it to point at any database:
"env": {
"DECIDUOUS_DB_PATH": "/Users/you/other-project/.deciduous/deciduous.db"
}
Server not connecting
- Verify the binary path exists and is executable
- Test the server manually:
deciduous mcp serve(it reads JSON-RPC from stdin) - Check that
deciduous inithas been run in the target project - Restart Claude Desktop / Claude Code after config changes