LocalKeep

io.github.zuneracodesPublished by GitHub account zuneracodesv0.1.3Updated Oct 24, 2026

Local chronological memory banks you control; Claude recalls them via MCP.

The publisher's own server: Keep

VerifiedSTDIODesktop onlyFiles & StorageKnowledge & Memory

Overview

AI-generated overview

LocalKeep gives an assistant a local, dated memory bank it can query through MCP, so recalled personal context comes from entries you wrote yourself.

What you can do
LocalKeep stores titled, dated, editable memory entries in a local SQLite database that you manage through a localhost Hub UI. An MCP server exposes that data to Claude Desktop, which queries it when a conversation needs your prior context. The README describes it as a chronological source of your own truth rather than a model-invented summary, and notes it is not a chat app or a cloud memory API.
When to use it
Worth adding if you keep diaries, work logs, or research archives and want an assistant to recall exact dated facts instead of a generic paraphrase. It suits people who want editorial control over what the model knows about them and prefer the database to stay on their own machine.
Requirements
Runs locally as a Python package (pip install localkeep, or uv tool install localkeep) and is registered in Claude Desktop's config as the localkeep-mcp command. The Hub UI serves on localhost. Optional environment variables LOCALKEEP_DATA_DIR and LOCALKEEP_DB_PATH set the database location; the default is ~/.localkeep. No authentication is declared.
Before you install
Retrieved memory text is returned into the chat and processed by Anthropic like any other tool result, so recalled fragments leave your machine even though the database stays local. The README recommends pasting LocalKeep instructions into Claude's personal preferences and clicking Always approve when it asks to run a tool, which grants standing tool approval. Only removing the database file deletes your banks.

Installation

In SourceWeft

  1. Open LocalKeep in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

LocalKeep

LocalKeep is for anyone who wants a chronological memory layer for chatbots where they directly control what the model remembers about them. Instead of forcing you to rely on a black-box cloud memory that the model invents around you that you can't even edit, LocalKeep lets you curate titled, dated, editable memory banks directly on your own machine where you write the entries and manage them locally via a localhost Hub UI. When a conversation requires your prior context, Claude queries your local data through a secure, native Model Context Protocol (MCP) connector.

Why use LocalKeep

AI Chat apps are great at sounding like they remember you, but struggle at recalling the exact thing you care about — what happened, on which date, about whom? Consumer memory features tend to lack the capacity for true temporal reasoning, flattening your history into a soft, generic vibe summary instead of understanding that Event A triggered Event B three months ago, causing its reasoning to fail when you need something specific: a life event, a research arc, a decision you logged months ago. Worse yet, consumer AI memory is a black box: you don't get to decide what the model chooses to remember about you, how it interprets your life, or when it invents context around you.

LocalKeep fixes both structural flaws at once by replacing fragile, model-invented timelines with a rigid, chronological source of your truth, all while giving you absolute editorial control. You decide exactly what the AI is allowed to know about you. You write the entries, you anchor the dates, and you keep them local on your own machine. Claude simply acts as the lookup engine via MCP when a conversation requires your prior context. LocalKeep bridges the gap between structured personal logging and intelligent AI retrieval, ensuring your context is curated by you—not hallucinated by an LLM.

Who it’s for

  • Anyone frustrated that chat memory can’t reliably fetch dated facts or understand timelines
  • People who already maintain meticulous personal diaries, work logs, or research archives. Instead of settling for a generic chat-app paraphrase, you get to inject your exact words and historical data into the prompt as an unyielding source of truth.
  • Users who trust Claude for its reasoning capability, but demand that their foundational context database remains stored locally under their own roof. (Note: Querying memories via MCP still sends the retrieved text fragments to Anthropic during the session).

What it is (and isn’t)

  • Is: A lightweight customizable local Hub UI to manage your dated memory banks, paired with an MCP server that Claude Desktop can call.
  • Isn’t: A standalone chat application, a cloud-hosted memory API, or a background utility that silently scrapes your personal conversations.

The Aesthetic Philosophy

The Hub UI intentionally adopts a retro, Windows 95/MS Paint-inspired homage with customizable features to ensure LocalKeep feels like a deeply personal tool rather than an impersonal, rigid dashboard. By putting adjustable interface elements right at your fingertips, the UI signals that you are entering an intimate, offline workshop for your mind—a space you can shape and reconfigure to feel entirely like your own.

Install

bash
pip install localkeep# or: uv tool install localkeep

Then:

bash
localkeep-hub          # http://127.0.0.1:8000

In Claude Desktop, register the MCP server (claude_desktop_config.json):

json
{  "mcpServers": {    "localkeep": {      "command": "localkeep-mcp",      "args": []    }  }}

If the GUI can’t find localkeep-mcp on your PATH, use the absolute path from which localkeep-mcp (the Hub’s Connect panel copies this for you).

Memories default to ~/.localkeep/localkeep.db when installed via pip. Override with LOCALKEEP_DATA_DIR or LOCALKEEP_DB_PATH.

Auto-use LocalKeep (important)

Claude will not reliably call MCP tools unless you also set Personal preferences:

  1. Claude Desktop → Settings → Profile → Personal preferences
  2. Paste the LocalKeep instructions (Hub → Connect → Copy instructions, or see src/localkeep/assets/claude-personal-preferences.txt)
  3. Quit Claude completely and reopen
  4. When LocalKeep asks to run a tool, click Always approve

Develop from source

bash
git clone https://github.com/zuneracodes/localkeepcd localkeepuv sync --group devuv run localkeep-hub                     # http://127.0.0.1:8000# optional live reload:LOCALKEEP_HUB_RELOAD=1 uv run localkeep-hub

From a source checkout, the DB lives in data/localkeep.db (gitignored).

Tests

These smoke-check the Hub, retrieval, and MCP tools so a fresh install still stores and recalls dated memories the way a real user would.

bash
uv sync --group devuv run pytest

Tests start from an empty DB and create memories through Hub form POSTs (same path as a new user).

Privacy

Storage is local. Banks and memories live in your chosen DB path (~/.localkeep/ for pip installs, or data/localkeep.db in a checkout). There is no LocalKeep cloud and nothing is auto-scraped from chat. Theme colors stay in browser localStorage. Refreshing the Hub page or restarting localkeep-hub does not delete your banks — only removing the database file does.

Recall goes through Claude. The Hub and database stay on your machine, but when Claude calls a LocalKeep MCP tool, the matching memories are returned into that chat and Anthropic processes them like any other tool result. LocalKeep isn’t shipping your whole DB upstream — only what that lookup returns for the question at hand.

Contributing

Bug reports and pull requests are welcome via GitHub Issues. Please run uv run pytest before opening a PR.

License

MIT — see LICENSE.

Source: README.md at commit 47d8e52

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.3LatestSep 16, 2026

Score

50% 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.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Keep integrations