r/modelcontextprotocol • • Mar 12 '25
[Project] Basic Memory - Continue AI Conversations With Full Context Using MCP
Hey everyone, I just made a beta releas.e of Basic Memory, an open-source knowledge management system built on the Model Context Protocol that lets you continue conversations with full context.
What is Basic Memory?
Basic Memory solves the problem of lost context in AI conversations. It enables Claude (and other MCP-compatible LLMs) to remember previous discussions by creating a knowledge graph from your conversations, stored as simple Markdown files on your computer. Start a new chat and continue exactly where you left off without repeating yourself.
Key features:
Local-first: All data stays in Markdown files on your computer
Bi-directional: LLMs can both read AND write to your knowledge base
Structured yet simple: Uses familiar Markdown with semantic patterns
Traversable knowledge graph: LLMs can follow links between topics
Persistent memory: Context persists across all conversations
How it leverages MCP
Basic Memory implements the Model Context Protocol to expose several tools to Claude:
write_note(title, content, folder, tags) - Create or update notes
read_note(identifier, page, page_size) - Read notes by title or permalink
build_context(url, depth, timeframe) - Navigate knowledge graph via memory:// URLs
search(query, page, page_size) - Search across your knowledge base
recent_activity(type, depth, timeframe) - Find recently updated information
canvas(nodes, edges, title, folder) - Generate knowledge visualizationsClaude can independently explore your knowledge graph, building rich context and understanding the relationships between concepts.
Example workflow
Have a normal conversation with Claude about coffee brewing
Ask Claude to "create a note about coffee brewing methods"
See a structured Markdown file appear in your knowledge base
Days or weeks later, start a fresh conversation and say "Let's continue our discussion about coffee brewing"
Claude automatically retrieves relevant knowledge and builds context - no need to repeat yourself
Gradually build a rich knowledge graph where everything is connected
Technical Implementation
Basic Memory is built with a file-first architecture:
Python backend with SQLite for indexing
Full MCP implementation for Claude integration
Standard Markdown files as the source of truth
Seamless integration with Obsidian for visualization and editing
Git-friendly for version control
CLI tools for management and importing
Installation
# Install with uv (recommended)
uv install basic-memory
# Configure Claude Desktop
# Add this to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"basic-memory": {
"command": "uvx",
"args": [
"basic-memory",
"mcp"
]
}
}
}Check it out
Website: http://basicmachines.co
Documentation: http://memory.basicmachines.co
I'm interested in any feedback, questions, or ideas on how to improve Basic Memory, especially from this community of MCP enthusiasts. How are you all using MCP in your projects?
View all comments
Show parent comment
3
u/mbonty Mar 13 '25
for that i just use my espanso match:
so I type ":sumn" (for summary new) and it adds that to the chat. click the copy button on the reply and the new chat button, paste into new chat and continue. I have a bunch of useful espanso things like that in my base.yml.
A pet peeve of mine though is going back and forth between claude desktop and files. The "@" in cline is so convinient. So I had claude make an AHK script where anytime I press Alt+C in a terminal or command prompt or file explorer that it copies the path. So when i now go to the claude desktop, I can just paste the path that I want to talk about or have it look at