Skip to main content
Glama

memory-mcp

A unified, local memory for Claude — an MCP server that stores memories as 1024-dimensional embeddings in a single SQLite file (memory.db) and serves them back over the Model Context Protocol.

  • Runtime: TypeScript, stdio transport

  • Store: SQLite + sqlite-vec

  • Embedder: pluggable — local Ollama (default) or remote Voyage AI

  • Vectors: float[1024], cosine distance

Data model (two tables, one id)

One memory is stored as two rows that share the same id:

memories (normal table)

vec_memories (vec0 virtual table)

id, text, tags, source, parent_id, content_hash, created_at, updated_at

rowid, embedding float[1024]

sqlite-vec's vec0 table only holds the vector, so the readable content lives in memories and the two are joined on memories.id = vec_memories.rowid. content_hash (sha256 of the text) makes exact duplicates a no-op.

Related MCP server: memcp

Setup

cd ~/memory-mcp
npm install
npm run build

Local embeddings (default, nothing leaves the machine)

# install & run Ollama, then pull a 1024-d model:
ollama pull bge-large
ollama serve            # if not already running

Remote embeddings (Voyage)

export EMBEDDER=voyage
export VOYAGE_API_KEY=...   # voyage-3 = 1024-d

Copy .env.example to .env to see all options.

Wire it into Claude

Add to claude_desktop_config.json (Claude Desktop) or .mcp.json (Claude Code):

{
  "mcpServers": {
    "memory": {
      "command": "node",
      "args": ["/Users/tylertabarovsky/memory-mcp/dist/server.js"],
      "env": { "EMBEDDER": "ollama" }
    }
  }
}

Tools

Tool

Args

Does

memory_write

text, tags?, source?

chunk → embed → store

memory_search

query, k?

embed query → cosine kNN → ranked hits

memory_list

limit?, tag?

recent memories, optional tag filter

memory_delete

id

remove content + vector

Capture model

This scaffold uses the explicit model: Claude calls memory_write when it decides something is worth keeping. Simplest and least noisy. A passive/auto capture layer can be added later on top of the same tools.

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    D
    maintenance
    Provides persistent memory for AI assistants like Claude, storing and retrieving information across conversations using a local SQLite database.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables Claude Code to query and store memories from past conversations using FTS5 search and topic-based retrieval, with no API costs.
    13 npm
    1
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Enables Claude to remember conversations and learn over time by storing and recalling messages, memory abstracts, and recent history using a local SQLite database.
    4
    11 npm
    71
    MIT