claude-memory-fts
Long-term memory mcp server with sqlite fts5 full-text search, bm25 ranking, and access tracking. zero config via npx.com
claude-memory-fts
Long-term memory MCP server for Claude Code. Stores facts in a local SQLite database with FTS5 full-text search and BM25 ranking.
Features
- Persistent memory — facts survive across sessions via SQLite
- Full-text search — FTS5 with BM25 ranking for relevant results
- LIKE fallback — partial matches when FTS5 finds nothing
- Access tracking — tracks how often each memory is accessed
- Upsert — automatically updates existing facts instead of duplicating
- Categorized — organize memories by type (preference, decision, technical, project, workflow, personal, general)
- Zero config — works out of the box, stores data in
~/.claude/memory.db
Install
# Add to Claude Code
claude mcp add memory -- npx claude-memory-fts
# Or run directly
npx claude-memory-fts
Configuration
| Environment Variable | Default | Description |
|---|---|---|
MEMORY_DB_PATH | ~/.claude/memory.db | Path to the SQLite database file |
Example with custom path:
claude mcp add memory -e MEMORY_DB_PATH=/path/to/my/memory.db -- npx claude-memory-fts
Tools
memory_save
Save a fact to long-term memory.
| Parameter | Type | Required | Description |
|---|---|---|---|
fact | string | yes | The information to remember |
category | string | no | One of: preference, decision, personal, technical, project, workflow, general |
memory_search
Search memories by keyword using FTS5 full-text search with BM25 ranking.
| Parameter | Type | Required | Description |
|---|---|---|---|
keyword | string | yes | Search keyword or phrase |
limit | number | no | Max results (default: 10) |
memory_list
List all saved memories grouped by category.
| Parameter | Type | Required | Description |
|---|---|---|---|
category | string | no | Filter by category |
limit | number | no | Max results (default: 50) |
memory_delete
Delete a memory by ID.
| Parameter | Type | Required | Description |
|---|---|---|---|
id | number | yes | Memory ID |
How It Works
- Memories are stored in a SQLite database with WAL mode for fast writes
- FTS5 virtual table mirrors the main table via triggers for real-time full-text indexing
- Search uses BM25 ranking for relevance, with a LIKE fallback for partial matches
- Each search/list call tracks access count and last accessed timestamp
- Duplicate facts are upserted (category and timestamp updated, no new row created)
Development
git clone https://github.com/kurovu146/claude-memory-mcp.git
cd claude-memory-mcp
npm install
npm run build
node dist/index.js
License
MIT
Servidores relacionados
CData Sync
A Model Context Protocol server for CData Sync, enabling data replication and transformation.
F1Data
Access Formula 1 data, including race results, driver standings, and circuit information.
Salesforce MCP Server
Enables natural language interaction with Salesforce data. Query, modify, and manage Salesforce objects and records.
Apple Health Data with Elasticsearch
A Python-based MCP server that connects to an Elasticsearch index with Apple HealthKit data.
DBeaver MCP Server
Integrates with DBeaver to provide AI assistants access to over 200 database types using existing connections.
Apache Doris
MCP Server For Apache Doris, an MPP-based real-time data warehouse.
Knowledge Graph Memory Server
Enables memory for Claude using a knowledge graph with fuzzy semantic search and persistent storage.
MySQL
Interact with and manage MySQL databases. Requires connection details configured via environment variables.
CockroachDB
Integrate with CockroachDB, a cloud-native, distributed SQL database.
Hologres
Connect to a Hologres instance, get table metadata, query and analyze data.