mcp-automem
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AUTOMEM_API_KEY | No | Optional API key for authentication (required for remote deployments like Railway) | |
| AUTOMEM_API_URL | Yes | The URL of the AutoMem service (e.g., http://localhost:8001) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
AutoMem is the agent's persistent long-term memory (graph + vector). Use recall_memory to retrieve context (session start, before decisions, when debugging), store_memory to persist decisions, patterns, preferences, and fixes, and associate_memories to link related memories into the knowledge graph. Search for the remaining tools when needed: update_memory edits an existing memory's fields in place, delete_memory removes one memory by ID or bulk-deletes by tag, and check_database_health verifies FalkorDB/Qdrant connectivity.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| store_memoryA | Store memory in one of two modes — single-memory (set top-level Mode 1 — Single (default): pass top-level Mode 1b — Supersede/correct: pass top-level Mode 2 — Batch: pass Content size guidelines (per item):
When to use:
Examples:
|
| recall_memoryA | Recall memories from AutoMem in one of three modes. The mode is selected by which params you pass. Mode 1 — ID fetch: pass Mode 2 — Tag enumeration: pass Mode 3 — Ranked retrieval (default): hybrid search across vector, keyword, tags, recency, and optional graph expansion. The primary tool for finding relevant context. By default, ranked recall requests current active memories only; set When to use ranked (mode 3):
When to use enumeration (mode 2): when you need to know how many memories carry a tag, or to walk all of them for cleanup/migration. Ranked recall ignores low-importance hits — enumeration does not. Examples:
|
| associate_memoriesA | Create typed relationships between memories. This builds a knowledge graph that improves recall by surfacing related context. Supports single-pair mode or batch mode with associations[] (max 500). When to use:
Authorable relationship types:
Read-only/internal relations:
Examples:
|
| update_memoryA | Update an existing memory's content, tags, importance, or metadata. Use this to correct or enhance memories rather than storing duplicates. When to use:
Examples:
|
| delete_memoryA | Delete a memory by ID ( Mode 1 — Single (default): pass Mode 2 — Bulk-by-tag: pass When to use:
Examples:
|
| check_database_healthA | Check the health status of the AutoMem service and its connected databases (FalkorDB graph + Qdrant vectors). When to use:
Example:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool targets a distinct operation (store, recall, update, delete, associate, health), and the mode-based descriptions make the boundaries mostly clear. The only real overlap is between store_memory's supersede mode and update_memory — both mutate an existing memory — but the descriptions do enough to steer an agent toward the right one.
All six tools follow a strict verb_noun snake_case pattern: store_memory, recall_memory, update_memory, delete_memory, associate_memories, check_database_health. No deviations or mixed conventions.
Six tools is well-scoped for a memory service: four CRUD ops, one graph-linking op, and one health check. Nothing feels padded or missing at the count level.
Full memory lifecycle is covered (create, read via three recall modes, update, delete, associate, health), including bulk and supersede paths. The notable gap is that associations, once created, cannot be removed or modified — there is no delete/update_association — so erroneous graph edges are permanent.