memory-ultra-rag-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MEMORY_ULTRARAG_UI_PORT | No | Also serve a browser view of this memory on this loopback port. Off by default. | |
| ULTRARAG_UI_STORAGE_ROOT | No | Fallback for MEMORY_ULTRARAG_STORAGE_ROOT. If set, global memory lands in UltraRAG's own UI storage tree. | |
| MEMORY_ULTRARAG_PROJECT_ROOT | Yes | The repository whose local memory is served. Required. | |
| MEMORY_ULTRARAG_STORAGE_ROOT | No | Where the account's global memory lives, as a normal directory. Defaults to $ULTRARAG_UI_STORAGE_ROOT, then this account's home data directory. |
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 | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| record_memoryA | Records one statement in this account's or this project's memory. Call it for something meant to hold beyond this reply: a rule, a principle, a decision, a correction, a preference, a path. Not for a request that is finished when it is answered. Recall first, with words covering the same thing. If a statement comes back that says the same, record nothing. If one comes back that contradicts it, forget that one first.
|
| recall_memoryA | Returns what is remembered that matches these words. It searches this project's memory and the account's memory together and ranks the results by how well they match, so the best statement wins whichever memory it is in. Each one names its scope. Give it a few words, not a sentence. When nothing comes back, that is what the search found: try other words, or pass a kind. |
| forget_memoryA | Removes one statement that is no longer true. Pass the exact Use it when a recalled statement is contradicted, and when a statement has simply stopped being true. |
| record_handoffA | Records this session's handoff for the next one, replacing the last. One statement at the top of this project's memory. The previous handoff
is removed as part of the same call, so a project holds one handoff
rather than a list of them, and Write what the next session needs to pick the work up: what is done, what is in flight, and what to do first. |
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 4 tools
The four tools have largely distinct roles: record_memory creates/overwrites a statement, recall_memory searches, forget_memory removes, and record_handoff manages session handoffs. There is minor overlap because record_handoff also writes memory, but the descriptions clearly differentiate it by its replace-last semantics and session-focused purpose.
All names follow a consistent snake_case verb_noun pattern: record_memory, recall_memory, forget_memory, record_handoff. The convention is predictable and easy to parse.
Four tools is well-scoped for a memory server, covering the core lifecycle operations (record, recall, forget) plus a specialized handoff tool. No tool feels redundant or missing for the stated purpose.
The surface covers create, read, delete, and session handoff, but lacks a direct update operation. Agents can work around this by forgetting the old statement and recording a new one, so the gap is minor but noticeable.