Local semantic search over your Obsidian vault - always fresh, never reindex.
Local semantic search over your Obsidian vault - always fresh, never reindex. That is what the freshvault mcp server brings to an AI assistant: the same capability, reachable through the Model Context Protocol rather than a separate app or dashboard.
Every other vault-search MCP makes you re-run an index command, babysit a watch terminal, or click "Update Index" in a web UI. freshvault watches your vault from inside the MCP server: edit a note, and Claude sees it seconds later. Automatically. Forever.
Installation goes through your MCP client rather than a global install: point it at freshvault on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
The server publishes 8 tools. What each one is for:
Incremental — only changed/deleted notes are re-embedded (mtime+size diff), debounced 4sMulti — client safe**: first server process becomes the writer (heartbeated lock); others are readers that hot-reload and promote themselves if the writerTransactional — an embedding-server outage mid-index can never lose or corrupt notesScale — vectors live in a packed Float32 sidecar (fast startup, compact); brute-force cosine over thousands of chunks is milliseconds. Honest note: search issearch_notes — semantic search + optional folder / tags / modified_after / modified_before scoping; exact-title lookups boostedget_note_context — full note + its backlinks/outlinks from the vault link graph (path-traversal safe)index_status — freshness report: notes/chunks, excluded count, last sync, watcher stateFlag — EnvConfiguration is passed through the environment: FRESHVAULT_VAULT, FRESHVAULT_EMBED_URL, FRESHVAULT_EMBED_KEY, FRESHVAULT_OLLAMA_URL. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
Plenty of planning and project tracking servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Freshvault's toolset — Incremental, Multi, Transactional and 5 more — is a fair guide to whether it matches your workflow. It is maintained by KIOKO-LAB; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| Incremental | only changed/deleted notes are re-embedded (mtime+size diff), debounced 4s |
| Multi | client safe**: first server process becomes the writer (heartbeated lock); others are readers that hot-reload and promote themselves if the writer dies |
| Transactional | an embedding-server outage mid-index can never lose or corrupt notes |
| Scale | vectors live in a packed Float32 sidecar (fast startup, compact); brute-force cosine over thousands of chunks is milliseconds. Honest note: search is still linear — sub-100ms into tens of thousands of chunks, but this is |
| search_notes | semantic search + optional folder / tags / modified_after / modified_before scoping; exact-title lookups boosted |
| get_note_context | full note + its backlinks/outlinks from the vault link graph (path-traversal safe) |
| index_status | freshness report: notes/chunks, excluded count, last sync, watcher state |
| Flag | Env |
{
"mcpServers": {
"freshvault": {
"command": "npx",
"args": ["-y", "freshvault"],
"env": {
"FRESHVAULT_VAULT": "your-value",
"FRESHVAULT_EMBED_URL": "your-value",
"FRESHVAULT_EMBED_KEY": "your-value",
"FRESHVAULT_OLLAMA_URL": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
| Variable | Description | Required |
|---|---|---|
| FRESHVAULT_VAULT | Configuration value read at startup. | Optional |
| FRESHVAULT_EMBED_URL | Endpoint or connection string the server talks to. | Yes |
| FRESHVAULT_EMBED_KEY | Credential the server authenticates with. | Yes |
| FRESHVAULT_OLLAMA_URL | Endpoint or connection string the server talks to. | Yes |
Your workspace, on speaking terms with AI — search, read and write Notion pages and databases.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Search and read your Drive — Docs, Sheets and files become context your assistant can actually use.
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Stop letting your assistant hallucinate n8n node parameters — this server hands it the real schemas, templates and validation.