fable MCP server
fable is a local memory and recall server for Claude Code that indexes your entire conversation history, making it searchable and retrievable mid-session — operating entirely locally without API keys or cloud services.
fable_search– Search across all past sessions by keyword, project, tag, file, or action verb; returns ranked threads with metadata (IDs, token counts, decisions).fable_thread– Retrieve exact, verbatim turns from a past conversation thread under a token budget — not a summary, the actual transcript.fable_block– Recover a specific tool result or turn byte-for-byte by UUID.fable_prune– Strip tool noise, images, and bloat from the current session transcript, with the original automatically sealed in a vault backup.fable_remember– Store durable facts, preferences, or rules that are auto-injected at the start of every future session (optionally scoped to a project).fable_recall– Read back all previously stored durable facts, globally or per-project.fable_context– Auto-assemble a budget-aware context pack from the most relevant past threads for a given task.fable_files– List all files Claude has edited across the archive or within a session, with edit counts and timestamps.fable_file_history– Reconstruct every version of a file Claude has ever edited, with timestamps and session info.fable_file_diff– Generate a unified diff between any two reconstructed historical versions of a file.fable_tags– Discover taxonomy tag families and values for precise tag-filtered recall searches.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@fable MCP serverwhat did we discuss about the database schema?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
fable Recall
Your Claude already has a memory. fable unlocks it.
Quickstart · Why fable · Benchmarks · Roadmap · Discussions
Every conversation you've ever had with Claude Code is already saved on your machine — every decision, every debugging hunt, every 2 AM breakthrough, word for word. Claude just isn't allowed to use it.
Mid-session, compaction builds a wall: everything behind it is locked away
to save tokens, and Claude carries on with a thin summary. /clear wipes
the slate. And after 30 days, Claude Code quietly deletes the files
themselves. Your project's real memory — locked, then destroyed, by
design.
Everyone else sells you a replacement memory: summaries, extracted facts, vector stores. fable does something different — it unlocks the real one.

pipx install git+https://github.com/grooverLab/fable
fable install # one command: register the MCP, install hooks, index your history
fable serve # browse your memory in a dashboard100% local · no API keys · no cloud · no daemons. Your conversations never leave your machine.
pipx install git+https://github.com/grooverLab/fable # install the CLI
fable install # one-shot: claude mcp add + Claude Code hooks +
# ~/.fable home + index every transcript
fable serve # dashboard at http://127.0.0.1:8765
pipx upgrade fable-recall # update later (pulls latest from GitHub)fable install is idempotent — safe to re-run; it skips anything already wired.
To do it by hand: fable setup (home) · claude mcp add fable -- fable mcp (MCP) · fable discover (index).
command | what it does |
| rank threads by relevance ( |
| assemble a budgeted context pack |
| a thread's raw turns, byte-identical |
| a file's full edit history across sessions |
| generate AI summary cards (background) |
| (re)scan + index all Claude Code projects |
| slim a session · export · index stats |
| the dashboard |
Ask about past conversations with Claude — get the real answer. "What did we decide about auth last month?" Claude searches its own history mid-session (via MCP) and quotes the actual transcript — not a summary, not an extracted "fact." The conversation itself.
The wall stops costing you. fable catalogs everything before compaction walls it off, and hands back exactly what Claude lost — on demand, under a token budget you set.
The 30-day deletion becomes irrelevant. Sealed into a local vault, byte-identical, for as long as you decide.
Related MCP server: acheron-mcp-server
First of its kind — five things no other tool does
🧵 Composed Sessions. Hand-pick conversations from any project, any month — put them in your order — and fable builds a brand-new session that Claude resumes as its own lived history. A workspace with curated memory. (Empirically verified: restitched sessions resume cleanly, signatures intact.)
🕰️ File time-travel. Your transcripts accidentally versioned
everything. fable reconstructs every file's edit history — every Edit
and Write Claude ever made, across every session — with side-by-side
comparison between any two moments of a file's life, and a jump back to
the conversation that made each change. (fable file src/loader.py)
✂️ Transcript Surgery. Your 80 MB session is paying rent on dead threads. Remove whole conversations — fable re-stitches the timeline, shows you the simulation first, and keeps every removed byte recallable forever. Reversible by construction.
🪶 Pruning that loses nothing. Slim every message (tool noise, images, bloat) before resuming a heavy session — with an itemized preview of the savings, and the original sealed in the vault first.
🔍 Memory Diff. See exactly what any prune or cleanup cost any conversation — generation by generation, byte by byte. Nobody else can even show you what was lost.
🔇 Run cold. Mute recall for a session or a fleet of sub-agents and they
work with no prior context at all - no injected memory, no recall tools - while
capture keeps running, so the muted work is still recorded verbatim and
searchable the moment you lift it. The point is an unbiased second opinion:
an audit that cannot be anchored to yesterday's conclusion.
(fable mute on · FABLE_MUTE=1 claude · a toggle in Settings)
How it works (the short version)
fable indexes your transcripts into a local SQLite archive: an immutable vault (every byte, forever) plus a search map (keyword + semantic, optional local embeddings via Ollama). Hooks run before Claude Code's compaction and cleanup; an MCP server gives Claude search / recall / remember tools. Measured on a real archive — 191,000 records, 6,000 conversations:
recall@1 | recall@5 | search (p50) | full re-index |
76.7% | 90.0% | 135 ms | 6.6 s |
Reproduce it: python3 scripts/benchmark.py. No competitor publishes
retrieval numbers.
Why fable — and not another memory layer
fable | claude-mem | mem0 / Letta | native Claude Code | |
Memory = your actual conversations | ✅ | ❌ summaries | ❌ fact snippets | ⚠️ locked behind the wall |
Survives the 30-day deletion & | ✅ | ⚠️ its summaries do | ❌ | ❌ |
Claude searches its own history (MCP) | ✅ | ✅ | ❌ | ❌ |
Composed sessions / file time-travel / surgery / diff | ✅ first of its kind | ❌ | ❌ | ❌ |
Zero API keys, fully offline | ✅ | ✅ | ❌ | ✅ |
Footprint | one SQLite file | Node + Chroma daemon | cloud / Docker | — |
(Fair is fair: mem0 fits multi-LLM production agents; ccusage goes deeper on billing analytics. Different jobs, both compatible with fable.)
Trusted the hard way
fable's first user is the session that built it: mid-build, that session
was pruned by fable (7.8 MB → 3.0 MB), kept working through compaction via
its own hook, and is now searchable through its own MCP server — and
fable file fable/recall.py replays its own source code being written,
18 versions deep. The build history eats its own dogfood — all $83k of
API-equivalent work in the author's archive included.
What people use it for
"Why did we choose X?" — architecture archaeology, weeks later
"When did this function break?" — file time-travel to the exact edit and the conversation around it
Picking up a debugging hunt exactly where the wall cut it off
A composed "workspace" session: threads from three projects, one memory
Slimming a heavy session before
--resume, reversiblyfable remember "we deploy Fridays only"— standing rules, every session
Try it on a fictional sample first:
python3 demo/seed_demo.py && fable --db demo/demo.db serve
MIT · local-first forever (non-goals) · built with Claude
Code, for Claude Code · @claude answers issues here — the butler is
Claude ·
architecture deep-dive ·
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- -license-quality-maintenanceEnables comprehensive search and analysis of Claude Code conversation history using full-text search, optional semantic vector search, and conversation management tools. Provides fast SQLite-based indexing with role-based filtering, project organization, and hybrid search capabilities combining keyword and semantic matching.Last updated
- AlicenseAqualityDmaintenanceCross-surface persistent memory for Claude. Bridges context between Claude Chat, Code, and Cowork via local SQLite with full-text search.Last updated6306MIT
- AlicenseAqualityDmaintenanceEnables Claude to remember conversations and learn over time by storing and recalling messages, memory abstracts, and recent history using a local SQLite database.Last updated44772MIT
- Alicense-qualityDmaintenanceProvides persistent, searchable memory for Claude Code using local SQLite, semantic embeddings, and full-text search, enabling Claude to recall and retrieve context across sessions and projects without external services.Last updated163MIT
Related MCP Connectors
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/grooverLab/fable'
If you have feedback or need assistance with the MCP directory API, please join our Discord server