Skip to content

gabrimatic/mcp-prose-memory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mcp-prose-memory

An MCP (Model Context Protocol) server for persistent memory with JSON storage. Lets an LLM keep context across sessions through atomic fact operations.

Features

  • JSON memory storage for reliable parsing
  • Atomic fact operations: add, remove, replace
  • Sectioned context organization
  • Case-insensitive duplicate detection
  • Limits: 30 facts per section, 300 chars per fact
  • Configurable storage path via environment variable

Installation

npm install -g mcp-prose-memory

Or run with npx:

npx mcp-prose-memory

Configuration

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["mcp-prose-memory"]
    }
  }
}

Claude CLI

Add to ~/.claude/mcp-servers.json:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["mcp-prose-memory"]
    }
  }
}

Custom Memory Location

Default storage is ~/.claude/memory.json. Override with the MEMORY_PATH environment variable:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["mcp-prose-memory"],
      "env": {
        "MEMORY_PATH": "/path/to/your/memory.json"
      }
    }
  }
}

Document Structure

JSON format with arrays of facts per section:

{
  "version": 4,
  "updated": "2025-01-15T10:30:00.000Z",
  "sections": {
    "work": ["Fact 1", "Fact 2"],
    "personal": ["Lives in Berlin", "Prefers dark mode"],
    "top_of_mind": [],
    "history": ["Completed project X"],
    "instructions": ["Be concise"]
  }
}

Tools

memory

Single tool for all memory operations. The command parameter selects the action.

Commands:

view

Show all memories or filter by section.

{"command": "view"}
{"command": "view", "section": "work"}

add

Add a fact to a section.

{"command": "add", "section": "personal", "fact": "Lives in Berlin"}

remove

Remove a fact by line number.

{"command": "remove", "section": "work", "line": 3}

replace

Update a fact by line number.

{"command": "replace", "section": "top_of_mind", "line": 1, "fact": "Working on new project"}

memory_context

Returns the full memory document for session initialization. Called automatically by hooks.

{}

Sections

Section Purpose
work Professional context, projects, colleagues, tools
personal Location, preferences, interests, personal facts
top_of_mind Current focus, active tasks
history Past events, completed work
instructions Standing rules, behavioral preferences

Development

git clone https://github.com/gabrimatic/mcp-prose-memory.git
cd mcp-prose-memory
npm install
npm run build

Developer

By Soroush

License

MIT

About

MCP server for prose-based persistent memory with markdown storage

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors