Basic Memory
Persistent AI memory as local Markdown files that both you and the model can read and edit.
Sources and review
Checked against public documentation on . Suitability guidance is our editorial judgment; this is not a performance benchmark or an endorsement.
People who want AI memory they can read, edit and keep as plain files.
Your organisation can't adopt AGPL-3.0 software.
About Basic Memory
Basic Memory stores what an assistant learns as Markdown notes on your machine and links them into a knowledge graph, so Claude, Codex, Cursor, ChatGPT and other MCP clients can pick up where they left off. The files work in Obsidian-style vaults. A paid hosted and team service is offered alongside the open-source local server.
Basic Memory is listed in this index written primarily in Python, with 4.5k stars on GitHub. Its latest recorded repository push was in November 2026; that is not an ASE editorial review date.
Before connecting: access and data
This record's specific permissions have not been reviewed by ASE. Read the publisher's documentation before copying setup or connecting.
- List the accounts, files and services the enabled tools can read, change or execute. Check your actual credentials and discovered tools.
- Use narrowly scoped credentials and read-only mode where supported. Review proposed writes before approving them; a generated configuration does not apply these limits for you.
- Local launch is not local-only data processing. External services receive requests, and your client may pass tool results to its model provider. Check both destinations before sharing private data.
- Keep keys and browser session files out of shared config, repositories and screenshots. Know how to disconnect the server and separately revoke its credentials or account sessions.
Add Basic Memory to your MCP client
Generated from the launch command in the project's README. Your client starts the server on demand.
Claude Code
claude mcp add basic-memory -- uvx --prerelease=allow basic-memory mcpCursor
{
"mcpServers": {
"basic-memory": {
"command": "uvx",
"args": ["--prerelease=allow", "basic-memory", "mcp"]
}
}
}VS Code
{
"servers": {
"basic-memory": {
"type": "stdio",
"command": "uvx",
"args": ["--prerelease=allow", "basic-memory", "mcp"]
}
}
}Claude Desktop
{
"mcpServers": {
"basic-memory": {
"command": "uvx",
"args": ["--prerelease=allow", "basic-memory", "mcp"]
}
}
}Codex
[mcp_servers.basic-memory]
command = "uvx"
args = ["--prerelease=allow", "basic-memory", "mcp"]