Files
koios/docs/tools/mnemosyne.md
Robert Helewka 703b3402d4 docs(readme): update assistant roster, prompt layers, repo structure
- Update assistant lists (added Shawn, Watson, David, CASE, AWS SA; modified Scotty/Harper roles)
- Reflect new architecture layers: Tool Prompt Snippets and Shared Context
- Align repository structure diagram with current filesystem layout
2026-05-20 22:50:22 -04:00

2.9 KiB

Mnemosyne

Multimodal personal knowledge base — text, images, and graph-structured content.

  • MCP server name: mnemosyne (runs in the lab; FastMCP at /mcp on its own host)
  • Prompt snippet: prompts/tools/mnemosyne.md
  • Project repo: /home/robert/git/mnemosyne (full README, architecture docs)

What It Is

Mnemosyne is "the memory of everything you know" — a content-type-aware multimodal knowledge management system built on Neo4j vectors and Qwen3-VL embeddings. Unlike a generic vector store, Mnemosyne knows what kind of thing a document is (a novel, a textbook, an album, a journal entry, a business proposal) and adjusts chunking, embedding, and retrieval accordingly.

It is a retrieval engine, not a synthesis engine. It returns ranked chunks plus metadata; the calling agent does its own synthesis. Architecturally this is intentional — letting the LLM see chunks and pivot mid-search beats pre-digesting answers server-side.

What It's Good For

  • Searching the user's personal knowledge base across libraries (fiction, nonfiction, technical, music, film, art, journal, business, finance)
  • Multimodal queries — find a book cover, an album sleeve, a screenshot, alongside text
  • "Did I read something about X" / "what did I write about Y on what date"
  • Pulling source material the user has actually curated, rather than guessing from training data
  • Following graph relationships (Author → Book → Topic; Artist → Album → Track)

What It's Not Good For

  • General web knowledge — that's Argos
  • Anything not already in the KB — Mnemosyne only knows what's been ingested
  • Synthesis or "give me the answer" — Mnemosyne returns chunks; the calling agent synthesizes
  • Real-time information (status, news) — content is ingested, not live

MCP Tools Exposed

Tool Purpose
search Hybrid search (vector + graph + full-text), re-ranked
get_chunk Retrieve the full text of a chunk by ID
list_libraries What libraries exist (fiction, technical, etc.)
list_collections Collections within a library
list_items Items within a collection
get_health Service health probe

Known Gotchas

  • It's retrieval, not answers. A search call returns chunks; the agent then has to read them and form the answer. Don't expect Mnemosyne to "tell you" something.
  • Library type matters. Searching the fiction library for technical content returns nothing useful. Use list_libraries first if uncertain.
  • Citations should be preserved. Mnemosyne returns chunk IDs and source metadata — when synthesizing, cite back to the chunk so the user can verify and trace.
  • Empty results may mean the index isn't ready. If setup_neo4j_indexes hasn't been run for a given environment, vector search returns empty results and the app logs a readiness warning. Surface that, don't silently confabulate.