Durable agent memory over a markdown vault: bitemporal facts, timelines, hybrid graph search.
MCPpedia last refreshed this data
io.github.lets-order-some-fries/loreweave is an MCP server that durable agent memory over a markdown vault: bitemporal facts, timelines, hybrid graph search. Its tool list has not been published yet over stdio and sse, requires no API key, and scores 85/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"io-github-lets-order-some-fries-loreweave": {
"args": [
"-y",
"loreweave"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Durable agent memory over a markdown vault: bitemporal facts, timelines, hybrid graph search.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
npx -y 'loreweave' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked loreweave against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in writing
Scrape, crawl, and map websites to Markdown or JSON via local CLI.
Documents to Markdown for agents: PDF layout, tables and OCR, Office, HTML, scans. docling in Rust.
一键同步文章到多个内容平台,支持今日头条、WordPress、知乎、简书、掘金、CSDN、typecho各大平台,一次发布,多平台同步发布。解放个人生产力
Create and edit PDFs: text, Markdown, tables, metadata and pages, with Japanese font embedding.
MCP Security Weekly
Get CVE alerts and security updates for io.github.lets-order-some-fries/loreweave and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A temporal knowledge engine for markdown vaults.
It indexes, links, remembers, forgets, and dreams — locally, over files you own.
Quickstart · What it does · CLI · Agent memory · Benchmarks · How it works · Research
Most knowledge tools are write-only. You capture diligently, the vault grows, and six months later you can't find the thing you know you wrote — because retrieval is keyword search over prose, nothing ever resurfaces on its own, and nothing notices when what you wrote last year stopped being true.
Loreweave is the layer that fixes that. Point it at a folder of markdown (Obsidian or plain) and it builds a knowledge graph, a bitemporal fact store, and a memory model over your notes — then hands them to you through a CLI and to your AI agents through MCP.
Three guarantees, enforced by the code rather than promised:
lore/. The vault is the source of truth — the index is a cache you can
delete at any time and rebuild identically (there's a test for that).git diff.npm i -g --allow-scripts=better-sqlite3 loreweave # the flag is for npm 12: see Requirements
cd ~/my-vault
lore init # creates .lore/
lore index # incremental sync; one changed note: 32 ms at 1k notes, 656 ms at 20k (see Scale)
lore search "why did we drop the queue design"
lore ask "what's the status of project atlas"
lore dream # what's duplicated, contradicted, stale, unlinked
Zero configuration and no network: out of the box it runs on BM25 + knowledge-graph spreading activation. Add local embeddings when you want them:
// .lore/config.json
{ "embedding": { "provider": "ollama", "model": "mxbai-embed-large" } }
Pick mxbai-embed-large (670 MB) for quality or nomic-embed-text (274 MB) when disk
and indexing speed matter more — required task prefixes are applied automatically for
both, and for the E5, BGE and Arctic families. The measured difference between the two
is in Benchmarks. No embedding provider means lexical + graph retrieval,
still fully functional.
Works with non-English vaults: Chinese, Japanese and Korean text is segmented per character so it is searchable at all, and other scripts index as written.
1. Knowledge that has a timeline. Facts are bitemporal: when they were true in the
world (valid_from/valid_until) and when the system learned them (recorded_at).
Contradictions supersede rather than overwrite, so history stays queryable.
$ lore assert "Ledger Format" status draft --valid-from 2026-01-01
$ lore assert "Ledger Format" status final --valid-from 2026-08-01
✓ Ledger Format :: status :: final
supers
... [View full README on GitHub](https://github.com/lets-order-some-fries/loreweave#readme)