All-in-one, self-hosted AI memory with semantic search, vector RAG, live updates, and governance.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
A self-hosted MCP server that gives AI agents persistent, searchable memory. Claude, Codex, Cursor, and any Model Context Protocol client write to one memory and read each other's.
Claude Desktop β download
montycat-mcp.mcpb
and drag it into Claude Desktop. No Python needed. That link always serves the
current release; every release
also carries a version-named copy and a .sha256 to check it against.
Claude Code β install uv, then:
/mcp confirms the montycat server is connected.
Codex, Cursor, other MCP clients β point your client's stdio config at
uvx montycat-mcp (Python 3.10+). For Codex:
Memory lives in a Montycat Semantic engine. Montycat MCP starts a local one for you, so most people can stop reading here.
Point it at an engine you already run:
Or start one yourself with Docker:
On Apple Silicon use the arm64-semantic tag instead β semantic is the amd64
image, and it crashes under emulation. Port 21211 carries live memory watches.
Talk to your agent normally; it picks the tool.
Remember that the team chose PostgreSQL for the billing service.
What did we decide about the billing database?
Save this to the shared
engineeringscope.
scope decides where a memory lives β alice for private, engineering for a
team, shared for common. It is a namespace, not a security boundary: for real
isolation, give each MCP server its own least-privilege Montycat credential.
| Need | Tools |
|---|---|
| Store | montycat_remember, montycat_remember_bulk, montycat_update, montycat_forget |
| Recall | montycat_semantic_search, montycat_recall, montycat_list_memories |
| Inspect schemas | montycat_list_enforced_schemas β check field names and data types before structured writes or filtered retrieval |
| Collaborate | montycat_await_memory_change β wait for another agent's write, no polling |
| Namespaces | montycat_list_keyspaces, montycat_create_keyspace, montycat_remove_keyspace |
| Admin | semantic index, snapshot, and policy tools β see the plugin guide |
Destructive tools are declared as such, so your client's confirmation prompts apply.
| Variable | Purpose |
|---|---|
MONTYCAT_URI | Connection string: montycat://user:password@host:port/store |
MONTYCAT_TLS | true for a remote TLS engine |
MONTYCAT_DEFAULT_KEYSPACE | Memory namespace; memory by default |
MONTYCAT_SCOPE | Default scope when a call omits one |
MONTYCAT_AUTO_PROVISION | Create a permitted scope on first use; true by default |
MONTYCAT_AUTOSTART | off to require an already-running engine |
Compose setup and the full variable list: compose.yaml and the plugin guide.
Changelog Β· Privacy Β· Issues Β· Docs Β· Docker Hub
Existing MemoCat installs keep working: memocat-mcp, MEMOCAT_*, and
memocat:// are still supported. New setups should use the Montycat names.
MIT
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/memocat)<a href="https://allmcps.com/mcp/memocat"><img src="https://allmcps.com/api/badge/memocat?style=directory" alt="MemoCat on AllMCPs" /></a>