Labsco
MCP SERVER

Memlord

by MyrikLD

A self-hosted memory server where you decide what gets remembered — hybrid keyword and semantic search over PostgreSQL.

Agent Memory
Summary
Explicit memory with real multi-user isolation — the opposite of a server that decides for you what was worth keeping.

Nothing is auto-extracted from your conversations: you store what matters, typed as a fact, preference, instruction, feedback, decision or insight, and tagged. That makes the store curated rather than noisy, and search returns snippets first so retrieval stays cheap until you ask for a full memory by name. The unusual part is dreaming — dream_report surfaces near-duplicates and conflicts and the merge happens through the model non-destructively, with superseded memories retired by expiry rather than deleted.

What it is

A Python memory server backed by PostgreSQL with pgvector: memories are stored explicitly, typed and tagged, and retrieved by BM25 full-text and vector search fused together.

What you get
  • store_memory — save a memory, idempotent by content, with near-duplicate detection and an optional expires_at
  • retrieve_memory — hybrid semantic and full-text search, returning compact snippets so a lookup does not flood the context
  • recall_memory — search by a natural-language time expression rather than a date range
  • get_memory — the full content of one memory by name, expired ones included
  • list_memories with type and tag filters, and search_by_tag with AND/OR matching
  • update_memory, delete_memory and move_memory, including moving a memory between workspaces
  • list_workspaces — the shared and personal workspaces you belong to
  • dream_report — a read-only consolidation pass listing similar pairs, expired and expiring-soon memories, which the dream prompt then walks the model through merging
  • A web UI for browsing, editing, deleting and exporting memories as JSON
  • Local ONNX embeddings that ship with the server — no embedding API key to configure
Requirements

Python 3.12 with uv, and PostgreSQL 15 or newer with the pgvector extension. OAuth 2.1 is always on; set MEMLORD_BASE_URL to your public URL and change MEMLORD_OAUTH_JWT_SECRET before deploying. Docker Compose start is documented. Dual-licensed: AGPL-3.0 for open-source use, commercial licence for closed-source deployments.

Setup effort

One command — uvx memlord