# GoodMemory

GoodMemory saves selected user and project facts, then brings relevant context back for later turns. It fits work that spans multiple sessions.

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

## What it does

GoodMemory can store chosen facts, retrieve relevant context, and add it to a later turn. Its API includes `remember`, `recall`, `buildContext`, `feedback`, `forget`, plus memory import and export. Persistent writeback is optional.

Memory is stored locally in SQLite by default, with no account or hosted service required. For Claude Code, add the server with `npx`; Codex also has a `goodmemory setup` flow. The integration includes lifecycle hooks and read-only MCP inspection. If you need facts written back persistently, note that writeback is opt-in.

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

## Install

### Claude Code (native platform)

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

### Codex

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

### Cursor

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

### GitHub Copilot

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

### Gemini CLI

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

## When to use it
- keep selected project facts across sessions
- retrieve context relevant to a new request
- inspect stored memory through MCP
- remove a memory that is no longer correct

## Example prompts
- Remember that this project uses SQLite and where its database schema lives.
- Recall the saved project structure before changing the API.
- Forget the old project name.

## 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
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89408
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [Front-End Checklist](https://affpapa.org/en/nevibecode/mcp/front-end-checklist.md) — MCP server · ★ 74559
- [Scrapling MCP Server](https://affpapa.org/en/nevibecode/mcp/scrapling-mcp-server.md) — MCP server · ★ 89433

---
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
