60-second memory for your Claude agent
Claude Desktop supports the Model Context Protocol, which means you can connect it to external tools — including Remem. Once connected, Claude can store memories across conversations and retrieve them automatically. This post walks through the setup.
Prerequisites
- Claude Desktop installed
- Docker and Docker Compose (prebuilt binaries are coming soon)
Step 1: Start Remem
Remem’s core is a single service, remem-server — storage, REST API, and MCP server all in one process. See the Docker Compose guide for the full compose file, then:
docker compose up -dVerify it’s running:
curl http://localhost:4545/api/v1/health# {"status":"healthy","message":"..."}Step 2: Configure Claude Desktop
Open Claude Desktop’s configuration file. On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json. On Windows: %APPDATA%\Claude\claude_desktop_config.json.
Add the Remem MCP server — Claude Desktop speaks MCP over stdio, so it runs the remem-mcp binary as a bridge to remem-server. It ships in the same rememorg/remem-community:server-latest image already started in Step 1, so this needs only Docker — no Rust toolchain:
{ "mcpServers": { "remem": { "command": "docker", "args": ["run", "--rm", "-i", "--network", "remem-network", "rememorg/remem-community:server-latest", "remem-mcp", "--server-url", "http://remem-server:4545"] } }}Restart Claude Desktop. You should see a tools icon in the conversation input indicating MCP tools are available.
Step 3: Store your first memory
In a Claude conversation, ask:
“Remember that I prefer concise bullet-point answers over long paragraphs.”
Claude will call store_memory with your preference. Remem stores it with auto-discovered connections to any related memories.
Step 4: Test recall
Start a new conversation — a fresh context window with no prior history. Ask Claude a question. Before responding, Claude will automatically call search_memories to retrieve relevant context. Your stored preference will surface and Claude will use it.
What’s happening under the hood
Each conversation turn, Claude can:
- Call
search_memorieswith the current query to retrieve relevant past context - Call
find_relatedon any retrieved memory to discover connected context - Call
store_memoryto persist new information from the current turn
The memory persists in remem-server’s embedded storage — LSM-tree for raw content, HNSW index for semantic search, CSR graph for relationships. Restart Claude Desktop or clear your context window: the memories are still there.
MCP tools available
| Tool | What it does |
|---|---|
store_memory | Store a new memory with tags, type, importance |
search_memories | Semantic, keyword, or hybrid search |
get_memory | Retrieve a specific memory by ID |
update_memory | Update content or metadata |
delete_memory | Soft or hard delete |
find_related | Traverse the relationship graph from a memory |
promote_to_longterm | Manually promote a short-term memory to long-term |
list_recent_memories | Recently created or accessed memories |
Adding authentication
Remem fails closed by default — remem-server returns HTTP 500 on every request until you either set REMEM_API_KEY or explicitly opt out with REMEM_ALLOW_AUTH_DISABLED=true for local development. For any shared or network-accessible deployment, set a real key in your compose file:
environment: - REMEM_API_KEY=your-secret-keyAdd "-e", "REMEM_API_KEY=your-secret-key" to the args in Step 2’s config (right after "--rm", "-i") and remem-mcp forwards it to remem-server as a bearer token.