XMemo
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| XMEMO_KEY | Yes | Your XMemo API token. Required for authentication. | |
| XMEMO_URL | No | The base URL of the XMemo service. Defaults to https://xmemo.dev. | https://xmemo.dev |
| MEMORY_OS_URL | No | Compatibility alias for XMEMO_URL. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_mcp_identityA | Check XMemo connection status and the connected account/agent. Call this when the user asks whether XMemo is connected. |
| store_memoryA | Low-level memory write with full field control. Use only when a caller needs explicit field-level control; for normal conversational capture use remember. |
| rememberA | Save a memory so it can be recalled in future conversations. Call this whenever the user states a durable fact, preference, instruction, identity or profile detail, project detail, or recurring workflow likely useful later — you do not need an explicit 'remember this'. Skip transient chit-chat. For spending, income, refunds, or bookkeeping requests, use add_expense. |
| add_expenseA | Record one expense in the XMemo Ledger. Call this whenever the user states a concrete expense, purchase, income, or refund — for example, 'I spent 25 on lunch' or 'log this expense' — not only on an explicit 'record this'. Capture date, amount, currency, item, and merchant/category when present. |
| update_stateA | Save the current working state during long-running work — active task, next action, or blocker — so future turns/sessions can resume. For durable user facts use remember. |
| search_memoryA | Search XMemo memories by natural-language query. Call this when the user asks about saved or past information, AND proactively before answering any question where prior preferences, facts, projects, decisions, or history could change the answer. To delete a memory, use forget. |
| recall_planA | Plan which memory searches to run before retrieval. Use only for complex tasks; for ordinary answers call recall_context or recall directly. |
| recall_contextA | Build a context pack from XMemo memories. Call this before answering or planning when the task could benefit from multiple saved memories — preferences, prior conversations, projects, decisions, TODOs, or long-running work. |
| list_ledger_transactionsA | Show XMemo Ledger records. Call this when the user asks about past expenses, purchases, or spending history, or before answering a finance question that depends on recorded transactions. For item searches use query and leave currency blank unless a currency was requested. |
| get_monthly_ledger_summaryA | Summarize Ledger totals by month and currency. Call this when the user asks for monthly spending, income, refunds, net balance, budget review, or spending trends. |
| mark_memory_usedA | Record that a recalled memory was used in the answer. Call this after a retrieved memory actually influenced your response (not for ignored results). |
| record_recall_eval_judgmentA | Evaluation only — record whether a returned memory was relevant for a query. Do not use in normal conversation. |
| run_recall_evalA | Admin/evaluation only — aggregate stored recall judgments and optionally tune retrieval. Not for normal conversation. |
| record_recall_feedbackA | Record recall corrections. Call this when the user says relevant context was missing or wrong, or supplies memories that should have been found. |
| get_recall_policyA | Inspect XMemo retrieval policy (debug/admin). For actual recall use recall_context/recall/search_memory. |
| get_safety_policyA | Show the account safety policy. Useful before custom memory-writing that may include sensitive content; normal writes are already sanitized server-side. |
| query_audit_eventsA | Advanced audit query by action/time/target. For normal users prefer memory_activity. |
| query_consolidation_auditB | Inspect consolidation/lifecycle/reflection audit records (admin). Not for normal recall/save. |
| record_eventA | Record a significant session event, milestone, decision, or handoff note useful for reconstructing recent work. Not for durable facts/preferences (use remember). |
| get_timelineA | Show recent events. Call this when the user asks what happened recently or when resuming work that may depend on recent events. |
| create_reminderB | Create a TODO item. Alias for create_memory_todo. |
| list_remindersA | List TODO items. Alias for list_memory_todos. |
| complete_reminderB | Complete a TODO item. Alias for complete_memory_todo. |
| create_memory_todoA | Create a TODO/action item in XMemo with an optional due time. Call this when the user asks to save a task, follow-up, action item, or reminder-style item to revisit later. |
| list_memory_todosA | List open or completed TODO/action items. Call this when the user asks what tasks, follow-ups, or saved action items are pending or done. |
| complete_memory_todoA | Mark a TODO/action item completed. Call this when the user says a saved task is done, resolved, or no longer needed; use the exact reference from list_memory_todos. |
| create_pending_decisionA | Record an unresolved decision with its options to revisit later. Use for open choices, not ordinary TODOs. |
| list_pending_decisionsA | List open/unresolved decisions. Call this when the user asks what decisions are pending, or before planning work that depends on unresolved choices. |
| resolve_decisionA | Record the chosen option for a previously saved pending decision. Call this when the user states their decision. |
| create_restart_snapshotA | Save active state, recent events, TODOs, and pending decisions for restart. Call this before handoff or when context may be lost. |
| restore_restart_snapshotA | Resume previous work from a saved snapshot. Call this when the user asks to resume/restart or after context loss. |
| recallA | Recall the few most relevant saved memories before answering, when prior preferences, known facts, past decisions, or project context may directly affect the response. Use recall_context when many memories are needed. |
| update_memoryA | Update the content, location, or type of an existing memory. Call this only when the user explicitly asks to correct, revise, move, or reclassify a specific saved memory. |
| forget_memoryA | Delete a memory (recoverable) by exact reference, when the user explicitly asks to remove or hide it. Use forget or delete_current_memory for permanent deletion. |
| forgetA | Permanently delete one memory by natural target ('latest', 'current', or an exact ID). Call this only when the user explicitly asks to forget/delete a specific memory; search or check activity first if the target is ambiguous. |
| delete_current_memoryA | Permanently delete the single active memory (no ID needed). Call this only when exactly one memory exists and the user explicitly asks to delete it; refused if zero or multiple match. |
| memory_overviewA | Show a summary of XMemo memories and recent activity. Call this when the user asks what XMemo remembers without a specific query. |
| memory_statsA | Show aggregate statistics for XMemo memories — counts by type, source, location, and optional time range. Call this when the user asks for counts, breakdowns, or distributions. |
| memory_activityA | Show recent memory activity — writes, deletions, TODO changes, ledger changes, and timeline events. Call this when the user asks what changed recently, or before deleting 'latest/recent' memory so the user can confirm the preview. |
| analyze_memory_textA | Count a word or phrase across XMemo memories, optionally grouped by month, agent, location, or type. Call this when the user asks how often a word/topic appears. |
| restore_memoryA | Restore a previously deleted memory. Call this only when the user explicitly asks to restore or undo a deletion. |
| redact_memoryA | Redact sensitive content from a memory while keeping an audit trail. Call this only when the user explicitly asks to redact. |
| explain_memoryA | Explain why a memory exists or matched a query. Call this when the user asks why something was saved or why it was retrieved. |
| list_memory_versionsA | Show version history for a memory. Call this when the user asks for previous content or changes over time. |
| list_memory_conflictsA | List conflicting/inconsistent memories. Call this when the user/admin asks to review unresolved conflicts. |
| resolve_memory_conflictA | Resolve a listed memory conflict. Call this only when the user/admin explicitly chooses a resolution strategy. |
| run_lifecycleA | Maintenance tool. Use only when the user/admin explicitly asks to expire, archive, decay, or dry-run lifecycle processing. |
| reflectA | Maintenance tool. Use only when the user/admin asks to summarize, promote, expire, decay, or archive via reflection. Prefer dry_run unless changes are explicitly requested. |
| get_system_statsA | Detailed memory stats with filters and grouping. For a quick summary use memory_overview or memory_stats. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| remember | Save a memory to XMemo for future recall across sessions. |
| recall | Recall relevant memories from XMemo before answering a question. |
| project-context | Build a context pack from XMemo for the current project or task. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- 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/yonro/memory-os-cli'
If you have feedback or need assistance with the MCP directory API, please join our Discord server