local-memo
Local-only MCP server for saving and restoring conversation context across AI agent sessions using JSON files on disk.
README
local-memo
Local-only MCP server for saving and restoring conversation context across AI agent sessions. No cloud, no accounts — just JSON files on disk.
Inspired by Upstash Memo, but fully local.
Why?
Memo is a great idea — save your conversation context, get a short ID, restore it later in a different session or agent. But there's no reason that data needs to leave your machine. This version replaces the cloud API + Redis with plain files in ~/.local-memo/.
Install
Claude Code
claude mcp add local-memo -- npx local-memo
Or from a local clone:
claude mcp add local-memo -- node /path/to/local-memo/dist/index.js
Claude Desktop / Cursor
Add to your MCP config:
{
"mcpServers": {
"local-memo": {
"command": "npx",
"args": ["local-memo"]
}
}
}
Usage
Save context
Ask your AI agent to save the current conversation context. It will call memo_set and return a short ID:
> Please save our conversation context
Context saved locally.
ID: 4tJ630XqhCV5gQelx98pu
Expires: 2025-01-30T14:38:51.278Z (1440 minutes)
Restore context
In a new session, give the agent the ID:
> Restore memo 4tJ630XqhCV5gQelx98pu
List saved memos
> List my saved memos
Delete a memo
> Delete memo 4tJ630XqhCV5gQelx98pu
Tools
| Tool | Description |
|---|---|
memo_set |
Save structured context (goal, completed tasks, pending tasks, decisions, files, extra context). Returns an ID. |
memo_get |
Restore context by ID. Returns formatted markdown. |
memo_list |
List all unexpired memos with their IDs and goals. |
memo_delete |
Delete a memo by ID. |
Options
| Flag | Default | Description |
|---|---|---|
--ttl-mins |
1440 (24h) |
How long memos live before expiring |
--dir |
~/.local-memo |
Storage directory |
Example with 7-day TTL:
claude mcp add local-memo -- npx local-memo --ttl-mins 10080
Storage
Memos are plain JSON files in ~/.local-memo/memos/:
{
"id": "4tJ630XqhCV5gQelx98pu",
"createdAt": "2025-01-29T14:38:51.278Z",
"expiresAt": "2025-01-30T14:38:51.278Z",
"ttlMins": 1440,
"context": {
"goal": "Build a local memo system",
"completed": ["Designed schema", "Wrote MCP server"],
"pending": ["Test it"],
"decisions": ["Use filesystem instead of Redis"],
"files": ["index.ts", "package.json"],
"context": "Extra notes here"
}
}
Back them up, sync them, grep them — they're just files.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.