Memory MCP - Redis Stack Backend

Memory MCP - Redis Stack Backend

A drop-in replacement for mcp-memory-duckdb with full concurrent access support using Redis Stack. Enables persistent knowledge graph storage with full-text search and multi-session concurrent access.

Category
Visit Server

README

Memory MCP - Redis Stack Backend

A drop-in replacement for mcp-memory-duckdb with full concurrent access support using Redis Stack.

Features

  • Concurrent Access: Multiple Claude sessions can read/write simultaneously
  • RediSearch: Full-text search across entities and observations
  • ReJSON: Native JSON document storage
  • Persistent Storage: RDB snapshots + AOF for durability
  • Git-Friendly Export: Auto-exports to JSONL after every change
  • API Compatible: Same tools as mcp-memory-duckdb
  • Cross-Platform: Works on macOS, Windows, and Linux

Quick Install

Windows (One-liner)

# PowerShell (run as Administrator recommended)
irm https://raw.githubusercontent.com/BakeMark/mcp-memory-redis/main/install.ps1 | iex

Or download and run:

curl -O https://raw.githubusercontent.com/BakeMark/mcp-memory-redis/main/install.bat
install.bat

macOS

# Install Redis Stack
brew tap redis-stack/redis-stack
brew install redis-stack

# Clone and install
git clone https://github.com/BakeMark/mcp-memory-redis.git ~/.claude/mcp-memory-redis
cd ~/.claude/mcp-memory-redis
npm install

# Start Redis
redis-stack-server --daemonize yes

Docker (Any Platform)

# Start Redis Stack
docker run -d --name redis-stack \
  -p 6379:6379 \
  -v redis-memory-data:/data \
  --restart unless-stopped \
  redis/redis-stack:latest

# Clone and install
git clone https://github.com/BakeMark/mcp-memory-redis.git
cd mcp-memory-redis
npm install

Configuration

Claude Code MCP Config

Add to ~/.claude/mcp-servers.json (macOS/Linux) or %USERPROFILE%\.claude\mcp-servers.json (Windows):

macOS/Linux

{
  "mcpServers": {
    "memory": {
      "command": "node",
      "args": ["~/.claude/mcp-memory-redis/src/index.js"],
      "env": {
        "REDIS_URL": "redis://localhost:6379",
        "MEMORY_DIR": "~/.claude/memory",
        "MEMORY_EXPORT_PATH": "~/.claude/memory/knowledge.jsonl"
      }
    }
  }
}

Windows

{
  "mcpServers": {
    "memory": {
      "command": "node",
      "args": ["C:\\Users\\USERNAME\\.claude\\mcp-memory-redis\\src\\index.js"],
      "env": {
        "REDIS_URL": "redis://localhost:6379",
        "MEMORY_DIR": "C:\\Users\\USERNAME\\.claude\\memory",
        "MEMORY_EXPORT_PATH": "C:\\Users\\USERNAME\\.claude\\memory\\knowledge.jsonl"
      }
    }
  }
}

Environment Variables

Variable Default Description
REDIS_URL redis://localhost:6379 Redis connection URL
REDIS_INDEX_NAME memory_idx RediSearch index name
MEMORY_DIR ~/.claude/memory Directory for exports
MEMORY_EXPORT_PATH ~/.claude/memory/knowledge.jsonl JSONL export path

Windows Requirements

The install script handles these automatically:

Requirement Install Method
Node.js 18+ winget install OpenJS.NodeJS.LTS
Docker Desktop docker.com/desktop

Alternative to Docker: Memurai (Windows-native Redis)


CLI Usage

# Export knowledge graph
node src/cli.js export ~/backup.jsonl

# Import knowledge (merge with existing)
node src/cli.js import ~/backup.jsonl --merge

# Import knowledge (skip existing entities)
node src/cli.js import ~/backup.jsonl --skip

# Search the graph
node src/cli.js search "database"

# Show statistics
node src/cli.js stats

# Clear all data
node src/cli.js clear

API Tools

The MCP server exposes these tools:

Tool Description
create_entities Create new entities with observations
create_relations Create relationships between entities
add_observations Add observations to existing entities
search_nodes Full-text search across entities
open_nodes Retrieve specific entities by name
read_graph Get entire knowledge graph
delete_entities Delete entities (cascades)
delete_observations Delete specific observations
delete_relations Delete relationships
export_knowledge Export to JSONL
import_knowledge Import from JSONL

Migration from DuckDB

Import your existing knowledge:

# Export from current DuckDB (if needed)
node /path/to/mcp-memory-duckdb/src/cli.js export /tmp/backup.jsonl

# Import to Redis
node src/cli.js import /tmp/backup.jsonl --merge

Concurrent Access

Unlike DuckDB which only allows single-writer access, Redis Stack supports:

  • Multiple concurrent readers
  • Multiple concurrent writers
  • Atomic transactions via MULTI/EXEC
  • No file locking issues

This means you can run multiple Claude Code sessions simultaneously, all accessing the same knowledge graph.


Data Schema

Entities are stored as JSON documents with the key prefix entity::

{
  "name": "EntityName",
  "entityType": "Type",
  "observations": ["obs1", "obs2"],
  "createdAt": "2026-01-30T12:00:00.000Z",
  "updatedAt": "2026-01-30T12:00:00.000Z"
}

Relations are stored with the key prefix rel::

{
  "from": "EntityA",
  "to": "EntityB",
  "relationType": "relates_to",
  "createdAt": "2026-01-30T12:00:00.000Z"
}

Troubleshooting

Windows: Docker not starting

# Start Docker Desktop manually, then retry
Start-Process "C:\Program Files\Docker\Docker\Docker Desktop.exe"

Redis Connection Failed

# Check if Redis is running
redis-cli ping

# Docker: check container
docker ps | grep redis-stack
docker logs redis-stack

# Restart container
docker restart redis-stack

Search Index Issues

The search index is created automatically on first startup. If issues persist:

redis-cli
> FT._LIST
> FT.INFO memory_idx

Windows: Uninstall

.\uninstall.ps1

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured