add_expense
ChatGPTRecord one spending item in the user's XMemo Ledger with the date, amount, currency, item description, and optional category or merchant.
analyze_memory_text
ChatGPTCount a word or exact phrase across the authenticated user's visible XMemo memories and optionally group matches by month, agent, location, or memory type.
complete_memory_todo
ChatGPTMark a selected XMemo memory-backed TODO/action item as completed. Use the exact item reference returned by list_memory_todos.
create_memory_todo
ChatGPTCreate a memory-backed TODO/action item in XMemo with optional due time. This stores an item ChatGPT or another authorized agent can list later; it does not create a native ChatGPT notification, phone push notification, or alarm.
delete_current_memory
ChatGPTHard-delete the only visible active XMemo memory. Use this instead of passing internal aliases when search returns no ID but the user clearly asks to delete the single active memory. The server refuses the request if zero or multiple active memories are visible.
explain_memory
ChatGPTExplain why a visible XMemo memory exists or matched a query using a user-facing summary.
forget
ChatGPTHard-delete one visible XMemo memory using a natural target. Use target='latest' for the newest visible active memory, or target='current' only when exactly one active memory is visible. Otherwise pass an exact ID or Memory ID shown by search or memory_activity.
forget_memory
ChatGPTSoft-delete a user-selected visible XMemo memory by exact reference so it can be restored later. Public clients see only the safe soft-delete schema; explicit hard deletion remains available through forget/delete_current_memory.
get_mcp_identity
ChatGPTShow the authenticated XMemo connector identity and granted memory scopes.
get_monthly_ledger_summary
ChatGPTSummarize XMemo Ledger totals by month and currency for spending, income, refunds, and net balance.
get_project_summary
ChatGPTUse this when the user wants a brief status, blockers, progress, or next-actions answer for one exact authorized project. It returns concise text only; use open_project_workspace to browse or manage the project. If the project cannot be resolved exactly, do not guess—direct the user to Project Workspaces Home.
ledger
ChatGPTUse this when managing Ledger records. For 'I paid 199 CNY for a membership', use ledger(action='add_expense'). For current-month totals use action='summary', months=1, and owner_timezone.
list_ledger_transactions
ChatGPTShow the user's XMemo Ledger records in a readable format. For item searches, use query and leave currency blank unless the user explicitly requested a currency, so records in different units are not missed.
list_memory_todos
ChatGPTList open or completed memory-backed TODO/action items stored in XMemo. Use this when the user asks what tasks, follow-ups, or saved action items are pending.
memory_activity
ChatGPTShow a safe, user-facing activity timeline for the authenticated user's own XMemo memory writes, deletions, memory TODO/action-item changes, ledger changes, and timeline events without exposing raw audit logs. Use this before deleting the latest memory so the user can confirm the content preview, not just the timestamp.
memory_overview
ChatGPTShow a simple user-facing summary of visible XMemo memories and recent activity.
memory_stats
ChatGPTShow user-facing aggregate statistics for the authenticated user's visible XMemo memories, including counts by type, source agent, location, and optional time range.
open_ledger
ChatGPTUse this when the user wants to open the visual Ledger or external-service Renewal reminders. view=subscriptions is a compatibility value, not an XMemo plan. Requires a real IANA owner_timezone. Read-only; changes no data. Use ledger for totals, rows, or recording; widget edits run through ledger; deletion stays in Chat with confirmation.
open_project_workspace
ChatGPTUse this when the user wants to open or browse projects visually. With no project or an ambiguous name, it opens Project Workspaces Home; one unique authorized project opens its eight-tab workspace. Use get_project_summary for a concise text status, open_todo_board for standalone TODOs, and open_ledger for Ledger.
open_todo_board
ChatGPTUse this when the user wants to open, browse, or filter TODOs visually. It requires the user's real IANA owner_timezone and only reads data; use todo(action='list') for text results, todo(create|update|complete) for writes, or forget(target=<TODO ID>) after explicit user intent to delete one exact item.
project
ChatGPTUse this when the user explicitly wants to create or change an authorized project or one of its memories, decisions, documents, conversations, or settings. Project/create requires name and no project_id; other actions require an exact project_id. Edits and unlinks require the matching reference and expected_version; memory edits use memory_ref (never memory_id). Use open_project_workspace or get_project_summary for reads.
read_memory
ChatGPTUse this when the user wants more content from one exact memory already identified by recall or search_memory. It returns one bounded character page with pagination metadata and never returns raw embeddings; use recall_context when several memories are needed together.
recall
ChatGPTRecall the most relevant saved XMemo memory for a user query and return a concise answer.
recall_context
ChatGPTBuild a focused context pack from XMemo memories for the current task or question.
record_event
ChatGPTUse this when the user explicitly wants to record one significant milestone, decision, or handoff in the XMemo timeline so recent work can be reconstructed. Use remember for durable facts or preferences and update_state for the current resumable checkpoint.
remember
ChatGPTSave a user-approved non-ledger memory into XMemo so it can be recalled in future conversations. For expenses, purchases, spending, income, refunds, or anything the user asks to '记账', use add_expense instead.
restore_memory
ChatGPTRestore a user-selected soft-deleted XMemo memory by exact visible reference. Use only when the user explicitly asks to restore or undo a deletion.
search_memory
ChatGPTSearch the authenticated user's XMemo memories by natural-language query. Use this when the user asks to find, read, reference, or retrieve saved memory. For deletion, use forget for a natural target or delete_current_memory when exactly one active memory is visible.
todo
ChatGPTUse this when the user wants to create, update, complete, or list authorized XMemo TODOs, or explicitly requests a recoverable bulk soft-delete. For action='list', provide the user's real IANA owner_timezone (for example, Asia/Tokyo) unless a saved owner profile supplies it. list rejects mutation-only fields and item_status must be open, in_progress, completed, or all. create requires client_mutation_id; update requires todo_id, expected_version, and client_mutation_id. delete_all requires explicit confirmation and confirm_delete_all=true. Use open_todo_board for visual browsing and forget(target=<TODO ID>) to delete one exact item.
update_memory
ChatGPTUpdate the content, location, or memory type of a user-selected visible XMemo memory by exact reference. Public clients get a constrained schema without raw metadata, scope, provenance, or conflict flags.
update_state
ChatGPTUse this when the user wants to save or refresh one resumable checkpoint with the current task, next action, or blocker. It versions the same scoped state slot; use remember for durable facts or record_event for history. ttl_seconds=0 means no expiry.