# dreamd

A local MCP server that keeps agent memory as plain files inside your repo, so several harnesses read and write the same store.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 6
- Author: botzrDev
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/botzrDev/dreamd
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/dreamd

## What it does

dreamd puts memory in a `.agent/` folder at the project root. Episodic events land in JSONL, semantic lessons and personal preferences sit alongside them. Any MCP-aware harness — Claude, Cursor, Cline and others — points at that same folder, so a lesson one agent records is available to the next one. Everything stays readable: `cat` it, `grep` it, diff it in git.

The MCP surface is deliberately small: `search_nodes` and `append_node`. The rest is CLI work against the same files — ranked lookup with `dreamd recall`, ranking breakdown with `dreamd blame`, salience scoring, memory branches, and single-event removal via `dreamd forget`. Writes go through the daemon so there is one writer at a time.

Your project needs a root sentinel first: `.git/`, `Cargo.toml`, `package.json` or `pyproject.toml`. A fresh folder needs `git init` before setup. The npm shim does not expose the `dreamd` binary on `PATH`, so `recall`, `score`, `status`, `archive` and `migrate` only work after `cargo install --path crates/dreamd-cli`. The core is Apache-2.0 and self-hosted.

## Requirements
- Needs: Node.js (commands run via npx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add dreamd -- npx -y dreamd-mcp
```

### Codex

**Platform CLI**
```bash
codex mcp add dreamd -- npx -y dreamd-mcp
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "dreamd": {
            "command": "npx",
            "args": [
                "-y",
                "dreamd-mcp"
            ]
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "dreamd": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "dreamd-mcp"
            ]
        }
    }
}
```

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add dreamd npx -y dreamd-mcp
```

## When to use it
- carry context across Claude and Cursor sessions without re-explaining
- keep project lessons in files you can review in a diff
- trace which stored memories shaped a search ranking
- switch memory to a snapshot and compare two branches
- drop a single episodic event along with the lesson naming it

## Example prompts
- Search memory for what we already learned about this project's build
- Append a lesson: tests fail without the `DATABASE_URL` environment variable
- Show me which memories drove the ranking for the migrations query

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
