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
TalkHub Store
Integrates with Supabase to allow AI assistants to access and manage store data.
NocoDB
Manage NocoDB server, support read and write databases
Adobe Commerce MCP Server by CData
A read-only MCP server for Adobe Commerce, enabling LLMs to query live data using the CData JDBC driver.
Veeva MCP Server by CData
A read-only MCP server by CData that enables LLMs to query live data from Veeva.
LanceDB
A vector database server for storing, searching, and managing vector embeddings.
Shardeum MCP Server
An MCP server for interacting with the Shardeum blockchain.
BigQuery
Inspect database schemas and execute queries on Google BigQuery.
Vertica MCP Server
Provides read-only access to Vertica databases.
MCP KQL Server
Execute KQL queries using Azure authentication. Requires Azure CLI login.
Poland KRS
Access to Polish National Court Register (KRS) — the government's authoritative registry of all businesses, foundations, and other legal entities.