Lore DB Server
FreeNot checkedProvides tools for semantic search, CRUD, verification, and reindexing of documents in a local vector-based knowledge base, usable via HTTP or stdio.
About
Provides tools for semantic search, CRUD, verification, and reindexing of documents in a local vector-based knowledge base, usable via HTTP or stdio.
README
A local, vector-based knowledge base with semantic search, a web UI, and an MCP server for use with Claude and other AI tools.
- Python backend — FastAPI REST API, sentence-transformer embeddings, SQLite storage
- React frontend — document management, semantic search, analytics dashboard
- MCP server — eight tools (
get,search,create,update,delete,verify,stale,reindex) over HTTP or stdio - Multi-namespace — isolate knowledge bases per project using the
X-KB-Namespaceheader orKB_NAMESPACEenv var - Analytics — tracks MCP tool usage (searches, views, creates) in a separate SQLite database
Architecture
proxy (nginx :8765)
├── /api/ → backend (FastAPI :8000)
├── /mcp/ → mcp (FastMCP :8000, streamable-http)
└── / → frontend (nginx :80, React SPA)
| Module | Description |
|---|---|
backend/app/vector_store.py |
SQLite document store + all-MiniLM-L6-v2 semantic embeddings |
backend/app/api.py |
FastAPI CRUD, search, reindex, analytics, namespace endpoints |
backend/app/mcp_server.py |
MCP tools (stdio, SSE, streamable-http transports) |
backend/app/service.py |
Per-namespace KB instances with LRU caching |
backend/app/analytics.py |
MCP event logging in a global analytics.db |
frontend/ |
Vite + React + TypeScript, TanStack Router, Tailwind |
Quick Start
Production
npm run start
Runs docker compose up --build -d. The app is available at http://localhost:8765.
npm run stop # docker compose down
npm run restart # down + up --build -d
Development (hot reload)
npm run dev
Runs docker compose -f docker-compose.dev.yml up --build. The app is available at http://localhost:8766.
- Backend restarts on Python file changes (
--reload) - Frontend uses the Vite dev server with full HMR
- Uses a separate database at
.localdata/backend-dev/so dev never touches prod data
Persistent Storage
SQLite databases are stored on the host and are gitignored:
| Path | Contents |
|---|---|
.localdata/backend/knowledge_base*.db |
Document store (one file per namespace) |
.localdata/backend/analytics.db |
MCP event log |
MCP Configuration
The MCP server is exposed at http://localhost:8765/mcp/ using the streamable-http transport.
Add a .mcp.json in the directory where you start Claude:
{
"mcpServers": {
"knowledge-base": {
"type": "http",
"url": "http://localhost:8765/mcp/",
"headers": {
"X-KB-Namespace": "my-project"
}
}
}
}
Set X-KB-Namespace to any alphanumeric slug. Each unique namespace gets its own isolated database.
Available MCP Tools
| Tool | Description |
|---|---|
get_document(document_id) |
Fetch full document content |
search_documents(query, limit) |
Semantic + lexical search with freshness decay |
create_document(title, content) |
Add a new document |
update_document(document_id, ...) |
Update title and/or content |
delete_document(document_id) |
Remove a document |
verify_document(document_id) |
Confirm a document is still accurate (bumps freshness timestamp) |
get_stale_documents(days_threshold) |
Find documents that may be outdated |
reindex_documents |
Re-embed all documents (run after first deploy or model changes) |
Stdio fallback
For direct CLI invocation without the HTTP server:
{
"mcpServers": {
"knowledge-base": {
"type": "stdio",
"command": "docker",
"args": [
"compose",
"exec",
"-T",
"-e",
"KB_NAMESPACE=my-project",
"backend",
"python",
"-m",
"app.mcp_server"
]
}
}
}
Reindexing
Run reindex_documents() via MCP tool, the Settings page, or curl after:
- First deploy switching from the old hash embedder to
all-MiniLM-L6-v2 - Upgrading to a different embedding model
curl -X POST http://localhost:8765/api/reindex -H "X-Kb-Namespace: my-project"
Normal create and update operations always auto-embed — no manual reindex needed.
Running Tests
cd backend
python -m pytest tests/ -v
Installing Lore DB Server
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/andreehultgren/lore-dbFAQ
Is Lore DB Server MCP free?
Yes, Lore DB Server MCP is free — one-click install via Unyly at no cost.
Does Lore DB Server need an API key?
No, Lore DB Server runs without API keys or environment variables.
Is Lore DB Server hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Lore DB Server in Claude Desktop, Claude Code or Cursor?
Open Lore DB Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Lore DB Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
