indra_db_mcp
MCP server for indra_db - a content-addressed graph database for versioned thoughts
Installation
npx indra_db_mcpAsk AI about indra_db_mcp
Powered by Claude Β· Grounded in docs
I know everything about indra_db_mcp. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
indra_db_mcp
Persistent memory for AI reasoning and decisions.
An MCP server that gives AI agents memory that persists across sessions. Built on indra_db β a git-like database for versioned thoughts.
The Problem
AI agents start fresh every session. Yesterday's insights evaporate. Decisions get re-made. Reasoning chains vanish.
indra_db_mcp changes that by giving agents:
- π§ Persistent memory β Record reasoning that survives session boundaries
- π Semantic search β Find past decisions by meaning, not keywords
- πΏ Branching β Explore alternatives without losing the main thread
- π History β See how understanding evolved over time
Quick Start
Install
No installation required β use bunx for automatic updates:
bunx -y indra_db_mcp@latest
Or install globally:
bun add -g indra_db_mcp
Configure Your Agent
Claude Code β Add to your project's CLAUDE.md:
@import node_modules/indra_db_mcp/INDRA_INSTRUCTIONS.md
Claude Desktop β Add to claude_desktop_config.json:
{
"mcpServers": {
"indra": {
"command": "bunx",
"args": ["-y", "indra_db_mcp@latest"]
}
}
}
OpenCode β Add to ~/.config/opencode/opencode.json:
{
"mcp": {
"indra": {
"command": ["bunx", "-y", "indra_db_mcp@latest"],
"type": "local"
}
},
"instructions": ["~/.config/opencode/instructions/indra.md"]
}
Then copy INDRA_INSTRUCTIONS.md:
mkdir -p ~/.config/opencode/instructions
curl -o ~/.config/opencode/instructions/indra.md \
https://raw.githubusercontent.com/moonstripe/indra_db_mcp/main/INDRA_INSTRUCTIONS.md
Generic MCP Client:
{
"mcpServers": {
"indra": {
"command": "bunx",
"args": ["-y", "indra_db_mcp@latest"],
"env": {
"INDRA_DB_PATH": "./.indra"
}
}
}
}
Tools
| Tool | Purpose |
|---|---|
indra_remember | Record reasoning, decisions, and insights |
indra_search | Find past reasoning by meaning (or "*" for all) |
indra_status | Check current branch and entry count |
indra_branch | Create, switch, or list branches |
indra_experiment | Quick sandbox for exploring alternatives |
indra_history | See how reasoning evolved |
indra_diff | Compare two points in history |
Example Usage
An agent might use Indra like this:
User: Should I use PostgreSQL or MongoDB for my e-commerce app?
Agent thinking:
β indra_search({ query: "database recommendations" })
β Found: Previously recommended PostgreSQL for relational data with transactions
β Making recommendation based on past reasoning + current context
β indra_remember({
content: "Recommended PostgreSQL for e-commerce app. User has relational product
catalog, needs transactions for orders. Consistent with past guidance.",
id: "ecommerce-db-decision"
})
Later:
User: Why did you recommend PostgreSQL?
Agent:
β indra_search({ query: "ecommerce database" })
β Found the reasoning from the previous session
β Can explain the decision with full context
Branching for Exploration
Agent: Let me explore an alternative approach...
β indra_experiment({ name: "try-nosql-approach" })
[Explores MongoDB path, records reasoning]
β indra_diff({ from: "main" }) // Compare with main reasoning
β indra_branch({ action: "switch", name: "main" }) // Back to main
Environment Variables
| Variable | Description | Default |
|---|---|---|
INDRA_DB_PATH | Path to database file | ./.indra |
INDRA_API_URL | API for sync (optional) | https://api.indradb.net |
How It Works
- Content-addressed storage β Every entry is hashed. Identity comes from content.
- Local embeddings β Uses
sentence-transformers/all-MiniLM-L6-v2for semantic search. - Git-like versioning β Commits create snapshots. Branches enable parallel exploration.
- Single file β Everything in one
.indrafile. Easy to backup and share.
Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β MCP Client (Claude) β
βββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β MCP Protocol (stdio)
βββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β indra_db_mcp (Bun) β
β βββββββββββββββ ββββββββββββββββ βββββββββββββββββ β
β β MCP SDK β β IndraClient β β Auto-sync β β
β βββββββββββββββ ββββββββ¬ββββββββ βββββββββββββββββ β
ββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββ
β CLI subprocess (JSON)
ββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββββββ
β indra CLI (Rust) β
β βββββββββββββββ ββββββββββββββββ βββββββββββββββββ β
β β Graph Store β β Embeddings β β Git-like VCS β β
β βββββββββββββββ ββββββββββββββββ βββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Visualize on IndraDB
Push to IndraDB for 3D visualization and analytics:
indra login
indra remote add origin username/my-memory
indra push origin
License
MIT
Related
- indra_db β The underlying Rust database
- IndraDB β Web platform for visualization
- MCP Specification β Model Context Protocol docs
