com.dayze/life-context
repo:https://github.com/gohluke/dayze-mcp
Life context for agents: get_context_pack + public notable packs. x402 + OAuth.
- transport:
- remote
- credential class:
- gated
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- add_inventory_itemshallow
Add an owned object to Life Inventory. ($0.10; API key required)
- add_inventory_valuationshallow
Append immutable valuation observation. ($0.10; API key required)
- add_people_to_listshallow
Add owned contacts to a contact list (list_id, or list_name as its name or slug). Returns added, already_member and not_found (ids that aren't the owner's contacts); a repeat adds nothing. create_if_missing=true creates a list named list_name first. Family follows relationships and is refused (code AUTO_SYNCED_LIST): set the relationship with update_person. undo_contact_change(change_id) removes the ones added. ($0.05; API key required)
- add_person_aliasshallow
Add a nickname/payment handle/misspelling alias for one CRM person. ($0.05; API key required)
- apply_event_fact_correctionshallow
Correct or dispute an event fact from a saved answer. Inspect its source first. Supply request_id for safe retries. ($0.10; API key required)
- archive_assetshallow
Soft-delete an asset (sets archived_at). Original rows are preserved for versioning. ($0.05; API key required)
- archive_eventshallow
Reversibly archive one owned event; preserve linked data and return restore_id. Use a new request_id for each intended action. ($0; API key required)
- archive_expenseshallow
Reversibly archive one owned expense; preserve linked data and return restore_id. Use a new request_id for each intended action. ($0; API key required)
- archive_inventory_itemshallow
Archive instead of destructive delete. ($0.10; API key required)
- archive_tripshallow
Reversibly archive one owned trip; preserve linked data and return restore_id. Use a new request_id for each intended action. ($0; API key required)
- attach_assetshallow
Link an existing asset_id to another entity by creating a linked copy (does not move the original row). Roles: original | processed | thumbnail | cover | document | receipt | certificate | other. Legacy: pass url instead of asset_id. ($0.10; API key required)
- attach_food_photoshallow
MUTATES one Food Diary row the authenticated user owns by storing a meal photo on it (same pipeline as the web diary upload). Required: food_id (UUID from log_food / search) plus exactly one of image_base64 (raw base64 or data: URL) or url (public https image). JPEG, PNG, WebP, GIF, HEIC, or AVIF under 8 MB. One photo per entry: calling again replaces photo_url (replaced/previous_photo_url report it). EXIF capture time moves consumed_at unless keep_consumed_at=true. Unknown or other-user food_id returns not_found and stores nothing. Response photo_url is re-read from the row. Syncs the mirrored calendar event and rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.15; API key required)
- audit_peopleshallow
CONTEXT LAYER: server-side contact hygiene. Returns compact candidate clusters only (duplicates, entity-type hints, normalization, payment-handle collisions). Do NOT use get_people bulk dumps for cleanup. ($0.10; API key required)
- backfill_place_namesshallow
Add human names to coord-only places/visits via Google nearby search + reverse geocode. Never overwrites existing names, coordinates, or user-entered fields. Idempotent; resumable via cursor under a per-account monthly Places quota. ($0.10; API key required)
- bulk_dismiss_clarificationsshallow
Dismiss non-person / typed junk from the clarification queue. ($0.05; API key required)
- classify_contactshallow
Set entity_type (person/company/merchant/…) on a CRM row without losing transactions or links. ($0.10; API key required)
- cleanup_applyshallow
Atomically archive the exact reviewed preview. Requires preview_id, candidate_hash and request_id. Refuses changed sources. Returns per-row statuses and restore_id; replay performs no additional actions. ($0; API key required)
- cleanup_previewshallow
Read-only account audit and durable archive plan for events, expenses or trips. Returns source hashes, linked records, field differences, rollback payloads and a review queue. Review the exact candidate set before cleanup_apply. Preview expires after 30 minutes. ($0; API key required)
- commit_life_updateshallow
Owner approve+commit via payload_hash + owner_session_id (flagged; off by default). ($0.10; API key required)
- compare_livesshallow
Side-by-side notable packs for two slugs (life_in_days + day_number timelines). One call instead of two notable_pack. Example: elon-musk vs steve-jobs. ($0.08)
- convert_contact_entityshallow
Convert a contact’s entity_type (same as classify_contact). Preserves FKs. ($0.10; API key required)
- correct_memory_atomshallow
Preview first, 30-day undo. Remove one exact false atom from a bundled memory, retaining the other text and clearing its stale embedding. Reviewed and reversible: first call preview_destructive_change({ tool: "correct_memory_atom", arguments: { memory_id, false_atom } }), which stores the exact change without applying it. After the user confirms, call correct_memory_atom with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. ($0.10; API key required)
- create_conditionshallow
Add a private condition for an explicit subject_type: self, or person plus an owned person_id from get_people/resolve_person. Never turn a family member's condition into self; if the person is unresolved, ask and write nothing. status defaults suspected—never infer active or confirmed from a mention. Keep the user's words; source defaults user_reported and confirmation_status reported. ($0.10; API key required)
- create_contact_listshallow
Create a contact list by name. A list whose slug matches is returned unchanged (created=false), so a repeat creates nothing. ($0.05; API key required)
- create_pending_replyshallow
Pending Replies (Inbox): save a reply the user owes someone, e.g. 'what to reply to X', 'I owe X a reply'. Use this, not log_event or a task. Optional draft (the reply text), summary (one line in your own words; never the email body, subject or sender), channel, category, received_at, and source { kind, thread_id, message_id } (ids only). Links the contact only when resolve_person finds exactly one (or pass person_id); otherwise the reply is saved unlinked and person_link says why. An unsent reply for the same thread or person comes back instead of a second one (created: false, deduplicated: true); update_existing: true replaces its draft and summary. Never sends anything. Requires API key or OAuth with context.write; share tokens cannot write. ($0.10; API key required)
- create_personshallow
Add a CRM contact; checks duplicates first. ($0.10; API key required)
- create_placeshallow
Save a venue card (business_contacts): address, opening_hours, affordability ($/$$/$$$), notes, tags. Idempotent by name or idempotency_key — does not create calendar notes. ($0.10; API key required)
- delete_eventshallow
MUTATES by removing one existing calendar event the authenticated user owns. Required: event_id (UUID). Unknown or other-user event_id returns an error. event_people tags cascade; linked entity_assets are archived. When the event mirrors a Food Diary row (external_source user_food_log), the food row is deleted too. For food-diary meals, prefer delete_food. Rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- delete_foodshallow
MUTATES by removing one Food Diary row the authenticated user owns and its mirrored calendar event. Required: food_id (UUID). Prefer this over delete_event for meals logged via log_food. Unknown or other-user food_id returns an error. Rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- delete_memoryshallow
Preview first, 30-day undo. Removes Dayze Agent memories the authenticated user owns: memory_id (or up to 50 memory_ids) from get_memories. Rows get_memories marks source "event" are calendar events (use delete_event). An unknown or other-user id is not found and nothing changes. Dayze chat and get_memories stop using them at once; rebuilds life_state. Reviewed and reversible: first call preview_destructive_change({ tool: "delete_memory", arguments: { memory_id } }), which stores the exact change without applying it. After the user confirms, call delete_memory with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. Requires API key or OAuth with context.delete. Share tokens cannot write. ($0.10; API key required)
- delete_momentshallow
Preview first, 30-day undo. Reviewed and reversible: first call preview_destructive_change({ tool: "delete_moment", arguments: { moment_id } }), which stores the exact change without applying it. After the user confirms, call delete_moment with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. ($0.10; API key required)
- delete_moment_previewshallow
Read a Moment and linked impact and store a reviewed deletion preview; nothing is removed. ($0.05; API key required)
- delete_personshallow
Delete one owned contact only after delete_person_preview. Preserves a complete restore snapshot for 30 days; undo with undo_contact_change using restore_id. Requires a request_id for retry-safe idempotency. ($0.10; API key required)
- delete_person_previewshallow
Create a durable, non-mutating snapshot of one owned contact and every linked record before deletion. Review the 30-day restore window, then pass preview_id to delete_person. ($0.05; API key required)
- delete_placeshallow
Preview first, 30-day undo. Delete a saved place card (business_contacts) by place_id / business_contact_id and return the deleted card. Reviewed and reversible: first call preview_destructive_change({ tool: "delete_place", arguments: { place_id } }), which stores the exact change without applying it. After the user confirms, call delete_place with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. Restore also re-links visits, events, expenses and people that pointed at the card. ($0.10; API key required)
- delete_place_visitshallow
Preview first, 30-day undo. Delete one place_visits row (visit_id from get_place_visits or log_place_visit) without deleting its canonical place. Reviewed and reversible: first call preview_destructive_change({ tool: "delete_place_visit", arguments: { visit_id } }), which stores the exact change without applying it. After the user confirms, call delete_place_visit with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. ($0.10; API key required)
- dismiss_clarificationshallow
Dismiss a pending entity clarification (not_person, etc.). ($0.05; API key required)
- enrich_place_from_googleshallow
Optional Google Places fill for a saved place card (hours/address/phone/website). Defaults to fill_empty_only — does not overwrite agent-supplied fields. ($0.15; API key required)
- explain_factshallow
Return evidence/provenance for a claim: polaris_learned_facts, life_events / life_event_relationships when present, then memories. Use when the agent must cite why it believes something — do not invent sources. ($0.10; API key required)
- find_identity_candidatesshallow
Compact identity resolution candidates by person_id or query (alias/name/payment signals). Prefer over bulk get_people. ($0.05; API key required)
- get_assetshallow
Fetch one asset by asset_id with signed_url for download/processing. ($0.05; API key required)
- get_berklee_relationship_mapshallow
Read-only owner view of the 2012–2015 Berklee email archive: per-person first/last cited contact, imported message volume, explicitly stored courses/projects, and email-anchor versus name-only provenance. Optional exact course, term, and project filters. Every cited event carries an inspect_url. Volume is not closeness; silence is not interpreted. Identity-document, health, and legal records are excluded. ($0.15; API key required)
- get_cities_visitedshallow
Canonical cities from completed trips. ($0.10; API key required)
- get_conditionsshallow
Private health conditions owned by the user, for subject_type self (default) or an explicitly resolved Dayze Contacts person_id. A person condition never appears in the user's self list. status: open (default), suspected, active, improving, resolved or all. condition_id returns recent check-ins and care items for the same subject. ($0.05; API key required)
- get_context_packshallow
Life Context Protocol (LCP) reference pack for a Dayze user: identity + who matters (edges) + week calendar + semantic/recent memories. Includes protocol.version. Optional query focuses memories. Requires API key or share token. Spec: https://dayze.com/docs/life-context ($0.20; API key required)
- get_countries_visitedshallow
Canonical countries from completed trips (not other people travel). ($0.10; API key required)
- get_current_statesshallow
Permitted assertion states for a person (flagged life-graph; off by default). ($0.10; API key required)
- get_entity_assetsshallow
List assets linked to an entity (role, signed_url, versions). entity_type inventory_item → inventory. ($0.10; API key required)
- get_entity_linksshallow
List graph edges for an event, trip, place, or person. ($0.05; API key required)
- get_event_fact_sourceshallow
Inspect an event fact from a saved Dayze answer before correcting it. Requires calendar read and travel details access. ($0.10; API key required)
- get_eventsshallow
User calendar events (range: today|week|month|year|decade). Requires API key. ($0.10; API key required)
- get_expensesshallow
List user expenses / cashflow summary. Requires API key. ($0.10; API key required)
- get_financeshallow
Money for a civil date range in the account timezone (max 366 days; default today): total spent and income in one display currency (the same aggregation as Dayze chat; transfers and IOU anchors left out, rows without an FX quote listed separately, never converted 1:1), plus totals by category and by currency. Optional category matches the expense category (e.g. "food"). Individual transactions are included only with the Financial details permission. ($0.05; API key required)
- get_food_logshallow
Food Diary entries (what, kind, place, local time, dishes, photo) for a civil date range in the account timezone (max 92 days; default today), oldest first. Optional place narrows to one venue. Each entry has food_id. ($0.05; API key required)
- get_fundraising_candidatesshallow
Structured fundraising CRM: source-backed roles, sector and stage fit, pipeline and existing graph intro paths. Use for who to approach for a round. Returns canonical person IDs. ($0.05; API key required)
- get_health_trendsshallow
Read private health trend points for self (default), or for an explicit person subject through condition_id. Effective points only by default; include_superseded returns corrections. ($0.05; API key required)
- get_interactionsshallow
Bounded graph read over life_updates (PHI-54/61): traverse interaction → person/event/expense/place with source/confidence on every hop. When life_update edges are missing, projects hops from CRM interactions, event_people, and expense person FKs (PHI-100). Prefer for “who was I with at X?”, “when am I meeting Y next?”, “how much at Z?”. 93-day default window. Pass person_name, place_query, or ids. ($0.10; API key required)
- get_inventoryshallow
Browse owned inventory with filters. ($0.10; API key required)
- get_inventory_itemshallow
Full item with valuations, people links, assets. ($0.10; API key required)
- get_inventory_valuationsshallow
Chronological valuation history for an item. ($0.10; API key required)
- get_life_contextshallow
Get the authenticated user's current life context — identity, today's events, mood, inner circle, and social edges. Prefer get_context_pack for a full session bootstrap. Requires API key. ($0.15; API key required)
- get_life_graphshallow
Hot life-graph export: favorites/VIP + people with edges or recent event tags. Pass full=true for a larger people list (still capped). Optional event–people links. Requires API key. ($0.25; API key required)
- get_location_contextshallow
Likely current or at-time place with confidence and provenance. ($0.10; API key required)
- get_location_historyshallow
Normalized visit history (venue-level by default, not raw GPS noise). ($0.10; API key required)
- get_memoriesshallow
User memories from Dayze Agent. Pass query for semantic retrieval; omit for recent chronological. Requires API key. ($0.10; API key required)
- get_momentsshallow
List owned Moments by date, title, type, tag, person or place. Stable moment_id and inspect_url for each. ($0.05; API key required)
- get_money_between_peopleshallow
Same as get_person_transactions: authenticated user ↔ one contact via expenses FKs. Prefer get_person_transactions; this alias exists for agent discoverability. ($0.10; API key required)
- get_movementsshallow
Read evidence-backed travel legs with their origin, destination, timing, mode, provider, distance, and linked expense. ($0.10; API key required)
- get_pending_repliesshallow
Pending Replies (Inbox): the replies the user owes ('who do I owe a reply?'), newest first, or one by reply_id. status: unsent (default; pending + snoozed), sent, dismissed, all. Filter by person_name or person_id. Each reply has reply_id, person_name, person_id (null when unlinked), draft, summary, channel, category, source ids, status, state (unsent | sent | dismissed) and due (owed now; false while snoozed until snooze_until). Read-only. ($0.05; API key required)
- get_peopleshallow
List user CRM people (flat list). Each row includes contact_origin (personal|online|imported). Requires API key. ($0.10; API key required)
- get_people_cleanup_resultshallow
Fetch start_people_cleanup result by cleanup_id. ($0.05; API key required)
- get_people_linksshallow
Alias of get_person_connections — list graph edges for one CRM person. ($0.05; API key required)
- get_person_aliasesshallow
List canonical aliases (nicknames) for a CRM person. Pass person_id or name (resolved via aliases). Requires OAuth or a supported scoped credential. ($0.05; API key required)
- get_person_connectionsshallow
List graph edges for one CRM person. ($0.05; API key required)
- get_person_interactionsshallow
Relationship timeline for one CRM person: interactions rows (message/call/meeting/note + extended kinds like visit/gift/stayed_over encoded in summary) plus co-tagged calendar events. Prefer this over dumping people.notes for “when did I last see X?”. Pass person_id or name. ($0.10; API key required)
- get_person_neighborhoodshallow
Subgraph around one person_id — profile plus all declared connections. Requires API key. ($0.15; API key required)
- get_person_photosshallow
Gallery image URLs for a CRM contact. Returns photos[{ id, url, is_primary, created_at }] plus inline MCP image attachments for chat render. Accepts person_id. ($0.10; API key required)
- get_person_transactionsshallow
Me↔contact money ledger from expenses (paid_to_person_id / income_from_person_id). Pass person_id or name. Returns entries + per-currency totals. Reuses existing expenses — no parallel ledger table. ($0.10; API key required)
- get_photoshallow
Single photo metadata + secure URL. Returns inline MCP image attachment when available. ($0.10; API key required)
- get_photos_for_eventshallow
Assets linked to an event. ($0.10; API key required)
- get_photos_for_placeshallow
Assets linked to a canonical place. ($0.10; API key required)
- get_placeshallow
Fetch one saved place card (business_contacts) by place_id — address, opening hours, affordability, notes. ($0.05; API key required)
- get_place_visitsshallow
When was I at a venue — merges place_visits, location_visits, and event locations. ($0.10; API key required)
- get_placesshallow
Known canonical places in the user Life Graph. ($0.10; API key required)
- get_residencesshallow
Home / residence history separate from trips: trips with metadata.kind=residence (from log_travel) plus optional life_eras. Use for Boylston / Madeira / current home cards. ($0.10; API key required)
- get_sleepshallow
Sleep: list typed sleep/nap records with duration_minutes. ($0.05; API key required)
- get_sleep_summaryshallow
Sleep: day/week/month totals and averages. ($0.05; API key required)
- get_timelineshallow
The user's days in one read: calendar events, Moments (lived stories) and Food Diary entries for a civil date range in the account timezone (max 92 days; default today). A food entry's calendar mirror is listed once, under food. Text the connection may not see is redacted as in get_events. Each record keeps its id and inspect_url where it has a page. ($0.05; API key required)
- get_todayshallow
Today in the user's timezone: local date and time, today's events, Moments and Food Diary entries, and today's money totals by category. Use first when an agent needs the user's current day. ($0.05; API key required)
- get_trackersshallow
List user trackers / habits / streaks. Requires API key. ($0.10; API key required)
- get_transactionsshallow
List expense/income/transfer rows. ($0.10; API key required)
- get_travel_historyshallow
Completed/confirmed travel only. ($0.10; API key required)
- get_tripshallow
Single trip with linked places and people. ($0.10; API key required)
- get_tripsshallow
User trips with status filter (planned/completed/etc.). ($0.10; API key required)
- import_rideshare_gmailshallow
Preview or import completed Lyft and Uber receipts as deduplicated origin-to-destination movements plus linked expenses. dry_run returns the exact proposed records without writing. Requires mail.read on an API key or non-ChatGPT OAuth connection. ChatGPT profiles do not grant mail.read or list this tool. ($0.15; API key required)
- import_uber_gmailshallow
Search connected Gmail for Uber trip receipts and write log_place_visit rows with sources gmail:uber-{gmail_id} (idempotent). Optional dry_run, max_results, query, account. ($0.15; API key required)
- import_venmo_gmailshallow
Search connected Gmail for Venmo receipts and write log_transaction rows with external_id=venmo-gmail-{gmail_id} (idempotent). Optional dry_run, max_results, query, mirror_event, account. Prefer this over calendar-only Money · digs. ($0.15; API key required)
- link_entitiesshallow
Link Trip→Stay→Place / Event→Person (graph, not prose). ($0.10; API key required)
- link_inventory_personshallow
Provenance link e.g. inherited_from, gifted_by. ($0.10; API key required)
- link_peopleshallow
Create person↔person graph edge (knows/friends/…). ($0.10; API key required)
- list_clarificationsshallow
Ranked clarification queue: only person-typed mentions + duplicate CRM people. Non-person junk (places, orgs, media, command fragments) is auto-dismissed. Existing contacts auto-link. ($0.05; API key required)
- list_contact_listsshallow
List the owner's contact lists (the lists on Contacts), by name: id, name, slug, member_count, created_at. auto_synced marks Family, which follows each contact's relationship. Filter contacts by list with get_people(lists). ($0.05; API key required)
- list_event_fact_correctionsshallow
List the owner’s recent event classification and event-person correction ledger, including undone entries. ($0.10; API key required)
- list_gmail_accountsshallow
List connected Gmail mailboxes for the authenticated user (id, email, is_default). Use account on search_gmail / read_gmail_* / import_*_gmail to pick a mailbox. Connect another inbox at /integrations (multi-mailbox after migration). Share tokens cannot call. ($0.05; API key required)
- log_condition_checkinshallow
Save a day's check-in for one condition with the same explicit subject_type/person_id. Self check-ins show on the user's Day Card; another person's do not. severity 0-10, note, treatment_done; logged_on defaults today. One per condition/day. ($0.05; API key required)
- log_entryshallow
CREATES one entry from what the user said: type food/meal/snack/drink/kopi/coffee → Food Diary (with its Finance row when amount is given), expense → Finance, moment → a private Moment. Uses the same duplicate check as Dayze chat: the identical entry sent again within about 2 minutes is not saved twice and the reply says "Already logged that a moment ago". Shows in Dayze with "Added by <this app>" and can be undone from the record. Returns the saved record id (food_id, expense_id or moment_id). ($0.10; API key required)
- log_eventshallow
MUTATES the authenticated user calendar. Use for non-food days — funeral, cremation, appointment, dinner, anything that is not a food log. Do not store this as a chat memory. Example (funeral tonight): log_event({ title: "Funeral service — Mr Goh Choo Taw", date: "2026-08-29", time: "8pm", location: "Multi Purpose Hall, Blk 661 Jurong West St 64", category: "funeral" }). Example (Sunday cremation): log_event({ title: "Cremation — Mr Goh Choo Taw", date: "2026-08-30", location: "Mandai Crematorium", category: "funeral" }). Required: title + event_date (YYYY-MM-DD; alias date). Optional: event_time (8pm or 20:00; alias time), end_date, end_time, location, description, category, external_url, people / with / person_ids, idempotency_key (recommended; retries reuse the first write). Unknown people names do not fail the write. Inserts public.events (user-scoped, private), optional event_people, then rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- log_expenseshallow
Create an outgoing expense only. For money received (Venmo/Cash App/PayPal/Zelle) use log_transaction with direction=from and type=income. ($0.10; API key required)
- log_favorite_songshallow
MUTATES the authenticated user favorite tracks list at /music. Use when they favorite or save a song — do not store this as a chat memory or in music_preferences. Example: “Henry Mancini - Piano And Strings (1995 Remastered)” → log_favorite_song({ track: "Henry Mancini - Piano And Strings (1995 Remastered)" }) or title + artist. Optional year_note, source_url. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- log_foodshallow
MUTATES the authenticated user Food Diary and calendar. Use when they ate or drank — do not store this as a chat memory. Example: “I had Mee Pok for late lunch with my parents” → log_food({ what: "Mee Pok", kind: "meal", meal_period: "late lunch", with: ["my parents"] }). Optional: place/merchant, amount, consumed_at (ISO). Resolves with/Mum/Dad via person aliases; unknown names do not fail the food write. Tags companions on the mirrored event. Rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- log_incomeshallow
Record money received (Stripe, refunds, payroll, Venmo). Alias of log_transaction with type=income and direction=from. Use external_id for Stripe/Gmail idempotency. ($0.10; API key required)
- log_interactionshallow
Contacts: log that the user was in touch with a contact ('I replied to Vadim', 'called Mum'): kind message, call, meeting, note, check_in or thought_of. Private to the owner. person_id (an owned contact) or person_name (linked only on one resolve_person match; otherwise nothing is logged and the candidates come back). With reply_id it also marks that Pending Reply sent: this interaction is the reply's one write-back (a later resolve adds no second). summary: one line in your own words, never email text or a subject. occurred_at: when it happened (ISO), default now; not in the future. Never sends anything. Requires API key or OAuth with context.write. ($0.05; API key required)
- log_momentshallow
Save a past story or memory as a private moment. Plans go to log_event; a touchpoint with a contact to log_interaction. Requires title, and moment_date (YYYY-MM-DD, YYYY-MM or YYYY; alias date) unless event_id is given. With event_id (an owned event the story is about) it creates a NEW moment linked to that event and takes the event's date and location when you pass none; the event itself is never changed, converted or deleted, and one event can have many moments. Don't also save the story as an event. Optional: description (the longer story), moment_date_precision (exact, month, year, circa), end_date, moment_type (default memory), location_name (only a place the user said), person_ids (owned contacts; any other id saves nothing), people_names (tag saved contacts only, never created), cover_image_url / media_urls (https links), tags. Always private: there is no visibility argument; the owner shares a moment in Dayze. Fix it later with update_moment. Requires API key or OAuth with context.write. ($0.10; API key required)
- log_movementshallow
Log one provenance-backed movement segment. Origin, destination, timestamps, source, and external_id are required for a deduplicated route history. ($0.10; API key required)
- log_place_visitshallow
MUTATES place_visits for map/history digs (Uber dropoff, address evidence). Required: place (or place_id) + arrived_at/date. Optional: departed_at, source (uber|mcp|…), evidence_expense_id (idempotent), city/country/address. Prefer this over stuffing streets only into expenses. ($0.10; API key required)
- log_sleepshallow
Sleep: log overnight or nap. Cross-midnight OK (e.g. 14:00→03:00 = 13h / 780m). ($0.10; API key required)
- log_transactionshallow
Income/expense/transfer write. direction=from + type=income for Venmo received. Positive amount; external_id dedupes imports. ($0.10; API key required)
- log_travelshallow
MUTATES trips (+ optional calendar travel event). Prefer this over free-text log_event for map/history. Required: city + start_date. Optional: country, end_date, kind (trip|residence|soft_pin), confidence (confirmed|likely|possible), evidence, title, mirror_event. Soft pins default to status=possible and stay off cities/map until confidence=confirmed. Zelle/Venmo money belongs in log_transaction — not here. ($0.10; API key required)
- merge_memoryshallow
Preview first, 30-day undo. Retire exact duplicates while keeping the named canonical memory. Preview shows every retired id and distinct provenance; the receipt restores all rows for 30 days. Similar wording is refused. Reviewed and reversible: first call preview_destructive_change({ tool: "merge_memory", arguments: { canonical_memory_id, duplicate_memory_ids } }), which stores the exact change without applying it. After the user confirms, call merge_memory with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. ($0.10; API key required)
- merge_momentsshallow
Preview first, 30-day undo. Preview with preview_destructive_change({tool:"merge_moments",arguments:{canonical_id,retired_ids}}). Conflicting story, date, place or event links stop the merge. Union people, tags and media. Reviewed and reversible: first call preview_destructive_change({ tool: "merge_moments", arguments: { canonical_id, retired_ids } }), which stores the exact change without applying it. After the user confirms, call merge_moments with preview_id, restore_window_acknowledged: true and request_id; the reviewed preview is applied exactly and a changed record is refused. Returns restore_id; restore_change({ restore_id }) undoes it for 30 days unless the record was edited since. ($0.10; API key required)
- merge_peopleshallow
Merge duplicate CRM contacts into a primary person. ($0.10; API key required)
- merge_people_previewshallow
Read-only dry run before merge_people. Returns resulting name/aliases, preserved counts, field conflicts, safe_to_merge. ($0.05; API key required)
- normalize_people_applyshallow
Apply a normalize_people_preview by preview_id. ($0.10; API key required)
- normalize_people_previewshallow
Preview whitespace/phone/handle normalization changes (no title-case of stylized names). ($0.05; API key required)
- notable_packshallow
DEFAULT for who is X: profile + life_in_days (age/day_number) + similar people + birthday peers. Timeline events include day_number. Prefer this over notable_profile. Example: albert-einstein. ($0.05)
- notable_pack_premiumshallow
S-tier guaranteed pack (score≥85, timeline≥8, image, embedding). Errors if below bar. Use when you need high-quality, complete notable context. Example slug: elon-musk. ($0.10)
- notable_profileshallow
Bio-only profile JSON by slug (no life-in-days, similar, or birthday peers). Prefer notable_pack for “who is X / age in days / peers”. Example: taylor-swift. ($0.02)
- notable_searchshallow
Search the public Dayze notable-people catalog by name, occupation, or slug. Use when you need to find a person before fetching a pack. Example slug: albert-einstein. ($0.01)
- preview_destructive_changeshallow
Review a destructive change before it happens. Stores the exact rows delete_food, delete_place, delete_place_visit, archive_inventory_item, archive_asset, reset_tracker, unlink_people, remove_person_alias, convert_contact_entity, bulk_dismiss_clarifications, delete_memory, delete_moment, merge_moments, merge_memory, correct_memory_atom would delete, archive or overwrite (with their before-state and linked records) without changing anything, and returns preview_id, operations, expires_at (30 minutes) and restore_window_days (30). Show it to the user, then call the named tool with preview_id, restore_window_acknowledged: true and request_id. ($0.05; API key required)
- preview_moment_duplicatesshallow
Group exact Moment duplicates first, then possible near duplicates for human review. Never merges automatically. ($0.05; API key required)
- propose_life_updateshallow
Propose assertion create/correct without committing (flagged; off by default). ($0.10; API key required)
- read_gmail_attachmentshallow
Download one Gmail attachment by message_id + attachment_id (from read_gmail_message.attachments). Returns utf-8 text for text/csv/vcf/vcard; binary types return filename/mime/size + a note (no base64 dump). Optional account. Read-only. Share tokens cannot call. ($0.10; API key required)
- read_gmail_messageshallow
Read one Gmail message by id from search_gmail. Returns subject, from, date, snippet, and plain-text body (truncated). Reuses the Integrations hub Gmail connection. Read-only — cannot send, archive, or delete. Never invent body text. If Gmail is not connected, connect at /integrations. Requires API key or OAuth with scope context. Share tokens cannot call this tool. ($0.10; API key required)
- record_health_trendshallow
Append a private trend for explicit subject_type self, or a person through a matching condition_id/person_id. Corrections supersede a point and retain history. ($0.05; API key required)
- record_purchaseshallow
Atomic expense + optional inventory item creation. ($0.10; API key required)
- record_saleshallow
Mark inventory sold + record sale proceeds with gain/loss. ($0.10; API key required)
- remove_people_from_listshallow
Remove contacts from a contact list (list_id, or list_name as its name or slug). The contacts themselves are unchanged. Returns removed, not_member and not_found. Family follows relationships and is refused (code AUTO_SYNCED_LIST). undo_contact_change(change_id) puts them back. ($0.05; API key required)
- remove_person_aliasshallow
Remove one alias from a CRM person. ($0.05; API key required)
- reset_trackershallow
MUTATES a sobriety/streak tracker for the authenticated user (sets current value to 0 and restarts the clock). Prefer tracker_id from get_trackers, or tracker_title fuzzy match. Optional reset_at (ISO) and note. Rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- resolve_clarificationshallow
Link a clarification surface to an existing person. ($0.10; API key required)
- resolve_pending_replyshallow
Pending Replies: mark a reply done: sent (default; the user replied, logged privately in the contact's history) or dismissed. Dayze sends nothing. By reply_id, or person_name / person_id when that person has exactly one unsent reply (otherwise the candidates come back and nothing changes). Marking sent writes one private interaction for the linked contact (not for an unlinked reply, and not twice); interaction in the result says what was written. Reopen with update_pending_reply status pending. Requires API key or OAuth with context.write. ($0.05; API key required)
- resolve_personshallow
Resolve a nickname or surface name to a CRM person via person_aliases → exact name → slug → unique substring. Returns avatar_url, photo_count, has_photos, and photos[{url,is_primary}] preview; use get_person_photos for full gallery. Notes omitted unless include_notes=true (redacted). Prefer this before money or relationship tools when the agent only has a nickname. ($0.05; API key required)
- resolve_placeshallow
Canonicalize a venue name via place aliases and fuzzy match. ($0.10; API key required)
- restore_changeshallow
Undo a reviewed destructive change by restore_id within 30 days: deleted rows come back with their links, archived or overwritten fields revert, and inserted history rows are removed. Refuses if the record was edited since; repeats are no-ops. Call-time aliases: restore_food, restore_place, restore_inventory_item, restore_asset, restore_tracker, restore_memory. Contact deletes/merges use undo_contact_change; event/expense/trip archives use restore_event/restore_expense/restore_trip. ($0.10; API key required)
- restore_cleanupshallow
Restore an archive or normalization receipt. Requires restore_id and request_id. Refuses intervening edits; repeats are no-ops. ($0; API key required)
- restore_eventshallow
Restore an archive or normalization receipt. Requires restore_id and request_id. Refuses intervening edits; repeats are no-ops. ($0; API key required)
- restore_expenseshallow
Restore an archive or normalization receipt. Requires restore_id and request_id. Refuses intervening edits; repeats are no-ops. ($0; API key required)
- restore_tripshallow
Restore an archive or normalization receipt. Requires restore_id and request_id. Refuses intervening edits; repeats are no-ops. ($0; API key required)
- score_people_duplicatesshallow
Score likely CRM duplicate pairs before merge_people. ($0.05; API key required)
- searchshallow
Semantic search across the authenticated user life graph (events, people, memories). Requires API key. ($0.15; API key required)
- search_gmailshallow
Search the authenticated user's already-connected Gmail inbox (read-only). Reuses the Dayze Integrations hub Gmail connection (service_connections provider=gmail, scope gmail.readonly) — no new OAuth vendor. Prefer Gmail operators: from:, subject:, is:unread, newer_than:7d, has:attachment. Returns id, subject, from, date, snippet only (no body). Follow up with read_gmail_message for the full body. Cannot send, archive, or delete. Never invent email contents. If Gmail is not connected, connect at /integrations. Requires API key or OAuth with scope context. Share tokens cannot call this tool. ($0.10; API key required)
- search_inventoryshallow
Structured + keyword search over owned objects. ($0.10; API key required)
- search_momentsshallow
Search only owned Moment stories and titles within an optional date range. Returns stable moment_ids. ($0.05; API key required)
- search_photosshallow
Search person photos and entity assets by query/metadata. Returns inline MCP image attachments. ($0.10; API key required)
- search_transactionsshallow
Keyword search over transactions. ($0.10; API key required)
- set_primary_person_nameshallow
Rename a CRM contact’s canonical name and refresh slug. By default preserves the old name as a former_name alias. Prefer this over create+merge for spelling fixes. Dayze is the context layer — bounded mutation only. ($0.10; API key required)
- start_people_cleanupshallow
Server-side read-only cleanup audit. Returns a review queue; never automatically merges contacts. Use normalize_people_preview/apply for reversible normalization. ($0.15; API key required)
- undo_contact_changeshallow
Reverse a reversible contact_mutations row (rename, alias, identity, classify, link). Merges are not reversible. ($0.10; API key required)
- undo_event_fact_correctionshallow
Undo an owned event fact correction by ledger ID. Supply request_id for safe retries. ($0.10; API key required)
- unlink_peopleshallow
Remove a person↔person graph edge. ($0.10; API key required)
- update_assetshallow
Patch role, metadata, description, or parent_asset_id (e.g. mark as processed). ($0.08; API key required)
- update_conditionshallow
Patch a condition by condition_id with its explicit subject_type (and person_id for a contact). The subject must match. Patch status, confirmation_status, source or condition fields; omitted fields stay untouched and null clears nullable text. Never infer active/confirmed. ($0.10; API key required)
- update_current_locationshallow
MUTATES where the user is now: profiles.location + polaris current_city/country (same as in-app Dayze chat). Pass location ("The Madeira, Singapore") and/or city+country; optional place/venue + lat/lon records a fresh location_visits check-in so get_location_context returns is_current. set_home defaults true; check_in defaults true when place or coordinates are set. Does not invent GPS when omitted. ($0.10; API key required)
- update_eventshallow
MUTATES one existing calendar event the authenticated user owns. Required: event_id (UUID). Optional patch (same fields as log_event): title, date / event_date, time / event_time, end_date, end_time, location, description, category, external_url, people / with / person_ids. Unknown or other-user event_id returns an error and does not create a row. For food-diary meals, prefer update_food (it syncs the mirrored event). Rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- update_expenseshallow
PATCH an expense row. ($0.10; API key required)
- update_foodshallow
MUTATES one existing Food Diary row the authenticated user owns. Required: food_id (UUID). Optional patch (same fields as log_food): what, kind, place, merchant, notes, consumed_at / meal_period, amount, currency, paid_by, with / people_names / person_ids. Example: add hot tea onto an existing Salmon Bento → update_food({ food_id, what: "Salmon Bento + hot tea" }). Unknown or other-user food_id returns an error and does not create a row. Syncs the mirrored calendar event and rebuilds life_state. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- update_inventory_itemshallow
PATCH semantics — unspecified fields untouched. ($0.10; API key required)
- update_momentshallow
Patch one owned moment by moment_id (from log_moment); fields left out are untouched. It stays private. Requires moment_id. Patchable: title, description, moment_date, moment_date_precision, end_date, moment_type, location_name, people, event_id, images, tags. Unknown or other-user moment_id returns an error and creates nothing. person_ids / people_names, media_urls and tags replace the stored list ([] clears); event_id links an owned event (the event is not changed), empty or null unlinks. Visibility is not an argument. Returns changed_fields. Requires API key or OAuth with context.write. ($0.10; API key required)
- update_notableshallow
MUTATES public notable_people. Superuser only. Patch by slug (bio, about, occupation, birth_place, birth_date, net_worth, residence, before_fame, trivia, family_life, zodiac, flag). Rejects unknown fields. No create/delete. Stamps last_updated_via=mcp. ($0.10; API key required)
- update_pending_replyshallow
Pending Replies: change one reply by reply_id: its draft (replaces; null clears), summary, channel, category, received_at, person (person_id, or person_name linked only on one match), source, or status pending (reopen / unsnooze) or snoozed with snooze_until. Unknown or other-user reply_id returns not_found. To mark it sent or dismissed use resolve_pending_reply. Never sends anything. Requires API key or OAuth with context.write. ($0.10; API key required)
- update_people_linkshallow
Patch an existing person↔person graph edge (type/context/source/confidence). ($0.10; API key required)
- update_personshallow
MUTATES the authenticated user CRM. Patch one existing person they own (person_id UUID required). Optional fields: is_favorite, tier (vip|normal|low), relationship, notes (replaces stored notes — read first if you need to append), birthday (YYYY|YYYY-MM|YYYY-MM-DD or null to clear). Rejects unknown fields. Does not create or delete people. Rebuilds life_state so the next get_context_pack inner_circle is fresh. Requires API key or OAuth with scope context. Share tokens cannot write. ($0.10; API key required)
- update_person_aliasshallow
Update alias_kind/source/display for an existing alias. ($0.05; API key required)
- update_person_identityshallow
Patch identity fields (legal/preferred name, pronouns, social handles, user_relationships[]). Never infer sensitive identity from appearance. Confirmed user_relationships are preserved unless force=true. ($0.10; API key required)
- update_placeshallow
Patch a saved place card by place_id / business_contact_id. Unspecified fields stay unchanged (hours, affordability, address, notes, …). ($0.10; API key required)
- update_sleepshallow
Sleep: patch an existing sleep record by sleep_id. ($0.10; API key required)
- upload_assetshallow
Upload image bytes to Dayze storage (WebP re-encode strips EXIF/AI metadata). Returns asset_id. For inventory item photos: pass entity_type=inventory, entity_id=inventory_id, role=photo, image_base64 from chat images. Or upload then attach_asset. ($0.15; API key required)
- upload_photoshallow
Upload a photo to a Life Graph entity. Accepts image_base64 or url (one required). Re-encodes via WebP (strips EXIF/AI metadata). Person uploads also write the CRM gallery (person_photos) and avatar when set_as_avatar=true. ($0.15; API key required)
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/2e413f11-8640-45a2-b263-bd8da32f664a)