An elephant never forgets. Now your AI agent won't either.
MCP (Model Context Protocol) server that gives Claude Desktop, Cursor, and other MCP-compatible tools access to the ClawVault memory system.
- π Semantic Search β Find memories using natural language queries via
qmd - π Store Memories β Create structured notes in preferences, decisions, patterns, people, projects, goals, transcripts, or inbox
- π Wiki-Links β Track connections between memories using
[[double-bracket]]links - π Connection Analysis β See your most-connected knowledge nodes and orphan files
- ποΈ Browse β List and read memories by category
cd ~/clawd/projects/clawvault-mcp
npm install-
ClawVault structure β Set up the vault directories:
mkdir -p ~/clawd/clawvault/{preferences,decisions,patterns,people,projects,goals,transcripts,inbox} -
qmd (recommended for semantic search):
# Install qmd if not already present cargo install qmd # Set up the ClawVault collection qmd collection add ~/clawd/clawvault --name clawvault --mask "**/*.md"
Add to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"clawvault": {
"command": "node",
"args": ["/path/to/clawvault-mcp/index.js"],
"env": {
"CLAWVAULT_PATH": "/path/to/your/clawvault"
}
}
}
}Example (Linux/WSL):
{
"mcpServers": {
"clawvault": {
"command": "node",
"args": ["/home/frame/clawd/projects/clawvault-mcp/index.js"],
"env": {
"CLAWVAULT_PATH": "/home/frame/clawd/clawvault"
}
}
}
}Add to your Cursor settings under MCP servers with the same configuration.
| Variable | Description | Default |
|---|---|---|
CLAWVAULT_PATH |
Path to your ClawVault directory | ~/clawd/clawvault |
Search your memories using natural language.
Search: "What does Pedro prefer for communication?"
β Returns relevant snippets from preferences, patterns, people files
Store a new memory in the vault.
Category: decisions
Title: Switch to WAL Protocol
Content: |
# Decision: Switch to WAL Protocol
**Date:** 2026-01-30
**Context:** Kept forgetting things after context compression
**Decision:** Implement write-ahead logging
**Reasoning:** Can't rely on remembering to remember
Related: [[projects/memory-system]], [[patterns/context-loss]]
Read a specific memory file.
Path: people/pedro.md
β Returns content + extracted wiki-links
List memories, optionally filtered by category.
Category: decisions
β Returns all decision files with paths and modification dates
Analyze the knowledge graph.
β Returns:
- Most connected nodes (hub files)
- Orphan files (no connections)
- Total link statistics
~/clawd/clawvault/
βββ preferences/ # What your human likes/dislikes
βββ decisions/ # Choices with context + reasoning
βββ patterns/ # Recurring behaviors observed
βββ people/ # One file per person (wiki-linked)
βββ projects/ # Active projects and ventures
βββ goals/ # Long-term and short-term goals
βββ transcripts/ # Session summaries
βββ inbox/ # Quick capture β process later
Use [[double-brackets]] to create connections:
# Decision: Pause Site Machine
[[people/pedro]] decided to deprioritize [[projects/site-machine]].
This affects [[people/forge]] who was running outreach.These links create a knowledge graph you can explore with clawvault_connections.
# Test the server directly
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | node index.js
# Or run the test script
npm test# Run with debug output
DEBUG=mcp node index.js
# Check if qmd is working
qmd search "test query" -c clawvaultRun: qmd collection add ~/clawd/clawvault --name clawvault --mask "**/*.md"
- Make sure you have
.mdfiles in your vault - Run
qmd updateto refresh the index - Try a simpler search term
Make sure index.js is executable: chmod +x index.js
MIT
"An elephant never forgets." β ClawVault π