Self-hosted shared long-term memory for coding agents, stored as a git-backed, Obsidian-compatible Markdown vault with a dashboard and no vector database.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add engram-rwnalds -- docker run -i --rm ghcr.io/rwnalds/engram:0.1.2~/.codex/config.toml
[mcp_servers.engram-rwnalds]
command = "docker"
args = ["run", "-i", "--rm", "ghcr.io/rwnalds/engram:0.1.2"]
# codex mcp add engram-rwnalds -- docker run -i --rm ghcr.io/rwnalds/engram:0.1.2~/.cursor/mcp.json
{
"mcpServers": {
"engram-rwnalds": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/rwnalds/engram:0.1.2"
]
}
}
}.vscode/mcp.json
{
"servers": {
"engram-rwnalds": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/rwnalds/engram:0.1.2"
]
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"engram-rwnalds": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/rwnalds/engram:0.1.2"
]
}
}
}claude_desktop_config.json
{
"mcpServers": {
"engram-rwnalds": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/rwnalds/engram:0.1.2"
]
}
}
}.trae/mcp.json
{
"mcpServers": {
"engram-rwnalds": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/rwnalds/engram:0.1.2"
]
}
}
}