memkeeper
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MEMKEEPER_STORE | No | Path to the store (default ~/.memkeeper/store.sqlite). | |
| MEMKEEPER_EMBED_DIMS | No | Dimensions for embeddings (e.g., 1536). | |
| MEMKEEPER_MODELS_DIR | No | Directory for models (default ~/.memkeeper/models/). | |
| MEMKEEPER_EMBED_MODEL | No | Model for embeddings (e.g., text-embedding-3-small). | |
| MEMKEEPER_RERANK_MODEL | No | Rerank model (e.g., cohere/rerank-v3.5). | |
| MEMKEEPER_EMBED_API_KEY | No | API key for embeddings API. | |
| MEMKEEPER_EMBED_BASE_URL | No | Base URL for the embeddings API. | |
| MEMKEEPER_EMBED_PROVIDER | No | Embeddings provider (e.g., 'openai' for OpenAI-compatible API). Required for off-device semantic mode. | |
| MEMKEEPER_RERANK_API_KEY | No | API key for rerank API. | |
| MEMKEEPER_RERANK_PROVIDER | No | Rerank provider (e.g., 'openrouter'). | |
| MEMKEEPER_HTTP_WRITE_TOKEN | No | If set, enables write operations on HTTP server. | |
| MEMKEEPER_REQUIRE_SEMANTIC | No | If set to '1', refuse to serve degraded lexical results when semantic unavailable. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
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 |
|---|---|
| statsA | Report store statistics: total/active memory counts, breakdowns by space, silo, status, and kind, schema version, and database size. Read-only; no side effects. Use to inspect the store's overall state and health, not to retrieve memories (use |
| searchA | Find individual memories ranked by relevance to a query. Semantic-primary when embedding models are loaded, falling back to deterministic BM25/FTS keyword search otherwise; cross-encoder reranked by default. Read-only. Returns scored, individual memory records (with ids) — use this to locate or inspect specific memories. To assemble a prompt-ready context block, use |
| getA | Fetch one memory by its exact id (for example, an id returned by |
| memory_listA | List recent memories in reverse-chronological order for review or cleanup, optionally filtered. Read-only. Use to browse or audit what is stored (including stale or superseded entries); use |
| entity_searchA | Search the entity graph by key, canonical name, alias, or type (substring match). Read-only. Returns entity records, not memories — use it to resolve an entity_key or canonical name from a partial term. For memory content use |
| graph_neighborsA | Traverse the entity graph outward from a starting entity, returning connected entities and the relationships between them up to a bounded depth. Read-only. Use to explore how an entity connects to others (raw graph structure); use |
| graph_contextA | Build a compact, prompt-ready context pack centered on an entity: the entity, its graph neighbors, and the most relevant linked memories, budgeted to a character limit. Read-only. Use when an agent needs ready-to-inject context about one specific entity; use |
| dream_graphA | Preview the graph-maintenance pass in dry-run (proposal-only) mode: surfaces the entity and relationship extractions and merges the nightly |
| rememberA | Write one durable memory the agent should be able to recall later. Mutating: persists a memory (set dry_run to validate without writing). Store exactly one atomic, self-contained fact, decision, preference, or lesson per call — include enough context that it stands alone ("the user deploys from the release branch, never main", not just "release branch"). Do not store secrets or raw transcripts. For a plausible-but-unverified inference, use |
| forgetA | Retire one specific memory by id. Mutating: tombstones the memory (a soft delete that preserves audit history), so it stops surfacing in recall; it is not a hard delete. Set mode='correct' when retiring a memory because it is WRONG (e.g. a surfaced/recalled fact the user contradicted), as opposed to routine cleanup: this records a distinct |
| entity_upsertA | Create or update one entity in the graph projection (register it, rename it, or add aliases). Mutating. The graph is a rebuildable projection over memories, which remain the source of truth — use this to curate entity identity, not to store facts (use |
| relationship_upsertA | Create or update one directed relationship in the graph: subject --relation_type--> object. Mutating. Identify each endpoint by entity_key (preferred) or internal entity_id. The graph is a rebuildable projection over memories — curate structure here, store facts with |
| verifyA | Re-confirm that an existing memory is still accurate as of now, stamping its last-verified time. Mutating: updates verification metadata only — it does NOT change the memory's content or promote it to a durable tier. If the value has CHANGED, do not verify; write a new memory with |
| packA | Assemble a compact, prompt-ready context block from one or more queries: retrieves, reranks, and budgets the top memories into injectable text. Read-only. This is the retrieval path for putting memory into an agent's prompt; use |
| candidate_submitA | Queue a proposed memory for human review instead of writing it to recall directly. Mutating: adds an item to the review queue (it does not enter recall until a human approves it via CLI/dashboard). Use this for plausible-but-unverified inferences; use |
| candidate_listA | List memories in the human-review queue, filtered by review status. Read-only. Use to see what has been proposed via |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/teflon07/memkeeper'
If you have feedback or need assistance with the MCP directory API, please join our Discord server