finds.dev← search

// the find

doobidoo/mcp-memory-service

★ 1,972 · Python · Apache-2.0 · updated Sep 2026

Open-source persistent memory for AI agent pipelines (LangGraph, CrewAI, AutoGen) and Claude. REST API + knowledge graph + autonomous consolidation.

MCP Memory Service is a self-hosted persistent memory backend for AI agents and assistants: the same store/search/tag operations are exposed over MCP (Claude Desktop, Claude Code, Cursor, Windsurf) and over a plain REST API (LangGraph, CrewAy, AutoGen, any HTTP client), backed by your choice of SQLite-vec, Cloudflare, Milvus, or a hybrid of local reads with cloud sync. It's aimed at people running multi-agent pipelines or daily CLI/IDE assistants who are tired of re-explaining project context every new session.

Storage is genuinely pluggable rather than hardcoded to one vector DB — SQLite-vec for local single-user, Cloudflare D1+Vectorize for multi-device sync, Milvus for scale — and embeddings run locally via ONNX so nothing has to leave your machine. There's a real benchmark suite (LongMemEval, DevBench, LoCoMo) with runnable commands in docs/BENCHMARKS.md instead of just asserted accuracy numbers. The REST API is a real differentiator from MCP-only memory servers, since it lets framework code call store/search directly without an MCP client library. CI runs CodeQL alongside the normal test/release pipeline, and there are CONTRIBUTING, SECURITY, and AUTHORSHIP docs.

The project has sprawled well past 'memory backend': a full claude-hooks subsystem (auto-capture, natural-language trigger detection, adaptive pattern scoring) and a separate claude_commands set live in the same repo, which is a lot of extra surface area and a lot of ways for one component's bug to become the whole project's problem. The docs tree is enormous and partly dated — archived design docs, 'superpowers' plans and specs with dates baked into filenames — which makes it hard for a new user to tell current guidance from superseded decisions. Supporting four storage backends (SQLite, Cloudflare, Hybrid, Milvus) means four code paths to keep correct, and the README itself hedges on which Milvus URI to use in production, which suggests that abstraction isn't fully settled. The remote-MCP path adds OAuth 2.0 with dynamic client registration on top of what's fundamentally a local dev tool — worth real scrutiny before exposing it with --host 0.0.0.0 as the docs mention.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →