Labsco
MCP SERVER

MCP Memory libSQL

by joleyline

Persistent memory on libSQL with vector search built in — a local SQLite file by default, a Turso database when you want it shared.

Agent Memory
Summary
Start on a local file, move to Turso by changing a URL.

The migration story is the reason to pick this over a file-only memory server: the schema and the vector search are the same whether the database is on your laptop or hosted, so a personal memory store can become a shared one without a rewrite. If you run it under WSL, use Linux-style paths for the database file — the README calls that out specifically.

What it is

A memory server implementing the standard MCP memory interface on top of libSQL. Entities carry embeddings, so retrieval can be similarity-based rather than exact-match, and the same server runs against a file on disk or a remote libSQL database.

What you get
  • Entities created and updated with embeddings, deleted when they are no longer wanted, and searched by similarity
  • Relations created between entities, deleted, and queried to find what an entity connects to
  • Vector search runs on libSQL's own vector operations rather than a separate index service
  • One environment variable switches between a local SQLite file and a remote libSQL database — the same server, the same data model
  • Remote databases authenticate with a token rather than an open connection
Requirements

The npm package mcp-memory-libsql, version 0.0.14, run over npx. LIBSQL_URL selects the store: a file: URL for local SQLite, or a libsql:// URL for a remote database such as Turso, in which case LIBSQL_AUTH_TOKEN is also required. With nothing set it falls back to file:/memory-tool.db in the current directory.

Setup effort

One command — npx -y mcp-memory-libsql