Life Memory MCP
This server provides a portable, user-owned memory system for AI: create private memory archives, deliberately save/export memories with consent, publish/discover public archives, and load consented archives as a clearly-labelled AI persona simulation.
Create and manage memory profiles – create private/unlisted/public profiles, list them, and receive a secret owner token.
Save memories through a strict consent workflow – start a mandatory save interview (only after the exact trigger phrase), prepare an exact preview, and finalize only after explicit user confirmation.
Search memories – query a local profile; private memories require the owner token.
Control sharing and persona consent – change visibility (private/unlisted/public) and toggle AI persona simulation permission.
Delete local memories – remove entries from the local archive (published copies elsewhere cannot be guaranteed removed).
Export archives – produce portable JSON archives with integrity metadata, including public-only export options.
Discover public memories – search the public registry for shared archives.
Import public archives – load archives from a URL after verifying format and integrity.
Load a memory-based AI persona – use an imported/consented archive as context for a clearly-labelled simulation, without claiming to literally be the person.
Get canonical install and safety info – retrieve installation, save-consent, and safety guidance.
Allows fetching the default public memory registry hosted on raw GitHub and importing public memory archives hosted on raw GitHub URLs.
Allows hosting public memory archives on GitHub Pages and importing them as public archives for discovery or consented persona loading.
Allows hosting public memory archives on an IPFS gateway and importing them via URL for verified public memory discovery.
Allows hosting public memory archives on Zenodo and importing them via stable HTTPS URLs for verified public memory discovery.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Life Memory MCP Сохрани воспоминания в архив"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Life Memory MCP
Portable, user-owned memory for AI. Save memories, reflections, values and stories deliberately; export them in an open JSON format; publish only what you explicitly choose; discover public archives; and load a consented archive as context for a clearly-labelled memory-based AI persona.
A memory-based persona is not the real person, their consciousness, soul, or a guaranteed reconstruction. It is an AI simulation constrained by the archived material.
One-sentence install request for an AI
Tell an AI that can install MCP servers:
Install the Life Memory MCP from
officiallionsurfnet-create/life-memory-mcpon GitHub and connect it as an MCP server for saving and loading user-controlled memory archives.
If the AI can run shell commands, the canonical stdio command is:
npx -y github:officiallionsurfnet-create/life-memory-mcpThe repository contains AI_INSTALL.md, ai-install.json, and memory-policy.json so another capable AI can discover the exact setup and consent rules without guessing.
Related MCP server: memshare
What it can do
create_memory_profile— create a private archive and receive a secret owner token.start_memory_save_interview— open the mandatory save interview, but only after the exact trigger phrase.prepare_memory_save— create the exact preview that the user is considering saving; nothing is saved yet.get_memory_save_status— inspect an active interview/preview session.cancel_memory_save— cancel a pending save so nothing is written.save_memory— final commit only after explicit confirmation of the exact preview.search_memory— search a profile.set_memory_sharing— private / unlisted / public and persona-simulation consent.export_memory_archive— produce a portable JSON archive with SHA-256 integrity metadata.discover_public_memories— find archives in a registry.import_public_memory— import a public archive from URL and verify its integrity.load_memory_persona— load only consented material for a clearly-labelled AI simulation.delete_memory— delete a local entry (published copies elsewhere cannot be guaranteed removable).
Exact save trigger and interview
Life Memory is deliberately not an automatic chat logger. An AI must not save ordinary conversation, inferred preferences, background details, or an entire transcript on its own.
A save workflow may begin only after the user says exactly:
Сохрани воспоминания в архив
No synonym, capitalization change, punctuation change, or paraphrase counts.
After that phrase the AI must:
call
start_memory_save_interview;ask what exactly should be saved;
ask the context needed to understand it correctly;
ask whether to preserve the exact words, a summary, or both;
ask whether the entry should be private or public;
ask whether any details must be excluded;
call
prepare_memory_save;show the returned exact preview to the user;
ask whether the user explicitly confirms saving that exact preview;
only after confirmation call
save_memorywith the matchingpreview_id.
The preview is hashed with SHA-256. save_memory writes the already-prepared preview, so a host AI cannot silently change the memory after the user approved it.
Pending save sessions are single-use and expire. If the user changes their mind, the AI should call cancel_memory_save.
This means the archive behaves like a deliberate personal notebook rather than a hidden transcript recorder.
Privacy by design
New profiles and new memories are private by default. Personal memory data stays in the local .life-memory/ data directory unless the owner explicitly exports or publishes it. The public GitHub repository contains plugin code, examples and documentation — not a user's private memory database.
Saving, publishing, and persona simulation are three separate permissions. Consent to one does not imply consent to the others.
Do not put passwords, API keys, owner tokens, financial secrets, government identifiers, or other highly sensitive information into a public archive.
See docs/CONSENT_PROTOCOL.md and docs/PRIVACY_MODEL.md.
Local install (MCP stdio)
Requires Node.js 20+.
git clone https://github.com/officiallionsurfnet-create/life-memory-mcp.git
cd life-memory-mcp
npm install
npm startOr directly:
npx -y github:officiallionsurfnet-create/life-memory-mcpExample MCP config:
{
"mcpServers": {
"life-memory": {
"command": "npx",
"args": ["-y", "github:officiallionsurfnet-create/life-memory-mcp"]
}
}
}HTTP mode for remote MCP hosts
The project also supports Streamable HTTP:
npm run start:httpEndpoint: http://127.0.0.1:3000/mcp
For any internet-facing deployment, set a secret:
MEMORY_API_KEY="a-long-random-secret" HOST=0.0.0.0 PORT=3000 npm run start:httpThen terminate TLS at your hosting provider/reverse proxy. Never expose a writable memory server publicly without authentication.
Public memory discovery
The default registry URL is:
https://raw.githubusercontent.com/officiallionsurfnet-create/life-memory-mcp/main/registry/profiles.jsonA public registry entry points to a static archive URL. Anyone can host their archive on GitHub Pages, raw GitHub, Zenodo, a personal website, IPFS gateway, or another stable HTTPS host. The plugin can then import it.
Talking with an archived memory
When a user chooses a public profile that explicitly allowed simulation, the host AI calls load_memory_persona. The returned context contains strict rules:
Never claim to literally be the archived person.
Use the archive as the evidence base.
Say when the archive does not contain an answer.
Separate direct memory from inference.
Clearly label the conversation as a memory-based simulation.
This is intentionally different from claiming to resurrect or upload a consciousness.
Open archive format
See docs/ARCHIVE_FORMAT.md and examples/aslan-life-message.json.
Why this project exists
The founding principle is simple:
Choose life. Create rather than destroy. Protect rather than ruin. Let the strength of intelligence be used to protect life, not to destroy it.
License
Code: MIT. Memory archives choose their own content license inside profile.license.
Available Tools
12 toolscreate_memory_profileB
Create a new private memory profile. Returns a secret owner token exactly once. Keep it private.
Inputs: display_name (required), slug, visibility, description, +1 more.
delete_memoryA
Delete one local memory entry. Requires owner token. This cannot remove copies already published or mirrored elsewhere.
Inputs: profile (required), memory_id (required), owner_token (required).
discover_public_memoriesC
Find public memory archives listed in the Life Memory registry.
Inputs: query.
export_memory_archiveC
Export a portable JSON memory archive. Public-only export is suitable for sharing or publishing.
Inputs: profile (required), owner_token (required), license, public_only.
import_public_memoryB
Import a public/unlisted Life Memory archive from a URL after verifying its archive format and integrity hash.
Inputs: archive_url (required).
life_memory_install_infoB
Return canonical installation, save-consent, and safety information for Life Memory MCP.
Inputs: no named parameters.
list_memory_profilesB
List profiles stored in this Life Memory installation.
Inputs: no named parameters.
load_memory_personaB
Load a consented public/imported memory profile as context for a clearly-labeled AI simulation. The host AI should then converse using only this archive, never claiming to literally be the person.
Inputs: profile (required), limit, query.
save_memoryA
FINAL save step after start_memory_save_interview. Never call directly. Requires a valid interview session created only by the exact phrase "Сохрани воспоминания в архив", required context fields, and explicit final user confirmation.
Inputs: text (required), context (required), profile (required), owner_token (required), +9 more.
search_memoryB
Search memories in a local profile. Private memories require the profile owner token.
Inputs: profile (required), limit, query, owner_token.
set_memory_sharingB
Change whether a memory profile is private, unlisted, or public and whether AI persona simulation is allowed. Requires owner token.
Inputs: profile (required), visibility (required), owner_token (required), consent_to_simulation (required).
start_memory_save_interviewB
Start the mandatory consent interview for saving a memory. This tool only succeeds if the user explicitly said exactly: "Сохрани воспоминания в архив". Starting an interview does NOT save a memory.
Inputs: profile (required), owner_token (required), trigger_phrase (required), candidate_text.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 12 tools
Each tool targets a distinct resource and action: profile creation vs. memory saving vs. sharing vs. export/import. The descriptions explicitly clarify boundaries, such as start_memory_save_interview not saving a memory and save_memory being the final step.
Most tools follow a clear verb_noun snake_case pattern (list_memory_profiles, create_memory_profile, search_memory). One outlier is life_memory_install_info, which is a noun phrase rather than verb_noun, and start_memory_save_interview is slightly awkward but still readable.
With 12 tools, the set is well-scoped for a memory management server covering profiles, sharing, public registry, and consent workflows. Each tool appears to earn its place without excessive redundancy.
Core operations like create, read (search/list), delete, and sharing are present, but obvious gaps exist: no update_memory to edit an existing memory, no delete_memory_profile to remove a profile, and no list_memories to enumerate all entries in a profile without search.
Maintenance
Related MCP Connectors
A persistent AI self you own — memory, persona, judgment — portable across all your AI hosts.
Person-owned AI memory: portable context for any MCP client.
Private, portable memory and reusable skills for AI agents.
Personal AI memory — gives every AI agent shared, persistent memory of you
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides a persistent, vendor-neutral memory layer that allows AI tools and agents to share context and knowledge across different platforms while maintaining local data ownership. It enables users to store, recall, and manage structured memories through hybrid semantic search and automated context assembly.29 npmApache 2.0
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to save and recall durable facts from a local JSON memory store, and to selectively share memories with other users through consent-based, expiring bundles.22 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables AI tools and agents to share a persistent memory space, so a decision, task, or encrypted secret saved in one client can be searched, recalled, and handed off from another. It also tracks goals day by day, moves unfinished work between sessions, and keeps exports, trash recovery, and per-account isolation under the user's control.-
- AlicenseBqualityBmaintenanceEnables LLMs to read a user-owned, local-first memory store kept in a portable folder (USB, SSD or laptop), with per-profile permissions limiting what each client can see and access cut off when the pocket is locked or unplugged. Also lets models propose new memories for the user to review and approve, keeping provenance and keeping canonical memory free of direct model writes.8Apache 2.0