Production-grade persistence backends for the MCP Python SDK
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"mcp-persist","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# mcp-persist [](https://github.com/Ar-maan05/mcp-persist/actions/workflows/ci.yml) [](https://pypi.org/project/mcp-persist/) [](https://pepy.tech/project/mcp-persist) [](https://pypi.org/project/mcp-persist/) [](LICENSE) When an MCP client reconnects, the server has to replay the events it missed, and with only the SDK's in-memory `EventStore`, that replay is impossible: the session lived in one process's memory, so a restart or a reconnect to a different worker loses it. **`mcp-persist` adds drop-in durable `EventStore` backends for SQLite, Redis, and PostgreSQL** that survive process restarts and scale across multi-worker deployments, keeping SSE stream resumability intact. > 📚 This README is the quick tour. Full reference lives in **[`docs/`](#-documentation)**: backends, CLI, the programmatic API, architecture, benchmarks, and the production guide. > ⚠️ **Requires the MCP Python SDK 2.0 or newer.** The 2.0 release renamed > `FastMCP` to `MCPServer`, moved the wire types to the `mcp_types` package, and > replaced `httpx` with `httpx2`. Supporting both SDK majors would mean import > shims through all of it, so mcp-persist 2.0 and later target 2.x only. > **Still on mcp 1.x? Pin `mcp-persist==1.12.2`**, which is feature-identical > apart from the fixes in 2.0.0. Stored events are unaffected either way: the > on-disk JSON is byte-identical across both SDK majors, so an existing store > keeps replaying correctly after you upgrade. ## Quickstart: `with_persistence()` The fastest way to add resumability to an MCPServer. Wiring it by hand means an event store, a `StreamableHTTPSessionManager`, a Starlette lifespan to open and close t…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.