memory_status
Memory status
Who you are on this Keephaven, whether you can write, and how much of your quota is used.
Takes no parameters.

io.github.dafarusdPublished by GitHub account dafarusdv0.1.0Updated Oct 29, 2026
Agent memory on your own Keephaven home server: files, append-only journal, search.
Gives an AI assistant a persistent file-and-journal memory stored on the user's own Keephaven home server, with search, read, write and delete tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
Your agent's memory, on a box in your house. An MCP server that gives an AI agent a long-term memory stored on a Keephaven, not on a vendor's server.
Works with MCP clients that run local servers, like Claude Desktop, Claude Code and Cursor.
claude_desktop_config.json:For Claude Code:
It installs straight from GitHub, so the first start takes a minute while it builds. Needs Node 20 or newer.
The machine running the agent has to reach the box: same home network, the Keephaven's own Wi-Fi, or your Tailscale tailnet when Remote access is on.
The box runs one Python file with no dependencies. Run that same file anywhere with Python 3:
Then point the MCP server at http://127.0.0.1:8790 with that token. The file is modules/agent-memory.py in the Keephaven repo.
skill/keephaven/ is an agent skill (a SKILL.md plus a read-only check.py): how to use a Keephaven as memory, and how to boot one in a VM and report what works. check.py was run against the Photos SSD image booted in QEMU: setup page, then ready, Photos up, Immich 3.0.3.
Built by @Dafarusd. MIT License.
Source: README.md at commit 8d6f316
Memory status
Who you are on this Keephaven, whether you can write, and how much of your quota is used.
Takes no parameters.
List memory files
List the files in your memory, optionally under a folder prefix like 'people' or 'projects/keephaven'.
prefixRead a memory file
Read one file from your memory. Returns its text and an etag; pass the etag to memory_write to avoid overwriting a newer copy.
pathrequiredWrite a memory file
Create or replace one file in your memory (UTF-8 text, up to 10 MB). Paths are plain segments of letters, digits, _ . - separated by '/'. journal/ is not writable here: use journal_append.
pathrequiredcontentrequiredif_matchDelete a memory file
Delete one file from your memory on the box. Journal files can't be deleted. A paired backup box keeps what it already received.
pathrequiredAdd to your journal
Append one entry to your append-only journal: what you did, decided, or learned. Nothing in the journal can be edited or deleted afterwards, so it's the record your future sessions can trust.
datatagstextrequiredRead your journal
Read your most recent journal entries, oldest first. Use at the start of a session to pick up where you left off.
limitsinceSearch your memory
Case-insensitive text search across your memory files and journal. Returns matching lines with file and line number.
limitqueryrequired90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
{ "mcpServers": { "keephaven": { "command": "npx", "args": ["-y", "github:dafarusd/keephaven-mcp"], "env": { "KEEPHAVEN_URL": "http://keephaven-xxxx.local:8790", "KEEPHAVEN_TOKEN": "khm_..." } } }}claude mcp add keephaven -e KEEPHAVEN_URL=http://keephaven-xxxx.local:8790 -e KEEPHAVEN_TOKEN=khm_... -- npx -y github:dafarusd/keephaven-mcppython3 agent-memory.py serve --data ./mem --bind 127.0.0.1 --dev-token khm_try-it-locally