Get Current TimeLABSCO SUMMARY
A storage fix, and it is the right one.
The original memory server keeps everything in a single JSON file that only grows, which becomes a context problem long before it becomes a disk problem. Moving to a document store with versioning is the whole reason this fork exists. Note the strictness on start-up: both path variables are mandatory, and a missing one is a refusal to start rather than a silent default.
What it is
A fork of the standard memory server that swaps flat-file storage for a PouchDB document store. Entities, relations and observations work the same way; what changes is that the backing store versions properly and holds up as the graph grows. Every memory is timestamped.
What you get
- Graph building: create entities and relations, add observations to an entity that already exists
- Graph reading:
read_graphreturns everything, plus search across nodes and opening named ones - Removal: delete entities, observations and relations, so a graph that has gone stale can be corrected
get_current_timesupplies the timestamp the recommended workflow attaches to observations- A per-project memory path, so separate projects keep separate graphs instead of sharing one file
- A ready-made system prompt in the README that wires the whole retrieve-attend-update loop for you
Requirements
Node.js version 16 or higher; PouchDB installs as a dependency. Clone, install, build, and point the client at the compiled entry point; the package is memory-pouchdb, version 1.0.0. Both MEMORY_FILE_PATH and POUCHDB_PATH must be set as absolute paths — the server refuses to start without them. Set DISABLE_MEMORY_FILE to true to use PouchDB alone, and POUCHDB_OPTIONS for extra database configuration.
Setup effort
Build from source — git clone https://github.com/bneil/mcp-memory-pouchdb.git
USE CASES
Giving an assistant memory that persists between sessions
Store people, preferences and decisions as entities with timestamped observations, and read the graph back next time.
Keeping projects from contaminating each other
Point each project at its own memory path rather than sharing one growing file.
Correcting something the assistant remembered wrong
Delete the observation or the relation rather than working around a fact that is no longer true.
Tracking when something was learned
Attach the current time to each observation so the graph carries history, not just state.
11 tools
Listed in project docs. Your client may show a different list.
Set Memory File PathCreate EntitiesCreate RelationsAdd ObservationsDelete EntitiesDelete ObservationsDelete RelationsRead GraphSearch NodesOpen NodesBEFORE YOU INSTALL
What to know first
Tools you get
11 tools named in the project's documentation.
Requires
Node.js
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/bneil/mcp-memory-pouchdb.git
cd mcp-memory-pouchdb
npm installnpm install also compiles the server to dist/index.js (the package.json prepare script runs the build). Put the full path to that file in the client configuration, and set MEMORY_FILE_PATH and POUCHDB_PATH to absolute paths — the server will not start without them.
MCP Clients
Claude Desktop, Cursor
{
"mcpServers": {
"memory": {
"command": "node",
"args": [
"<YOUR_PATH_TO_MCP_MEMORY_POUCHDB>/dist/index.js"
],
"env": {
"MEMORY_FILE_PATH": "<YOUR_PATH_TO_CUSTOM>/memory.json",
"POUCHDB_PATH": "<YOUR_PATH_TO_CUSTOM>/pouchdb_directory",
"DISABLE_MEMORY_FILE": "true"
}
}
}
}