# engraph

A local knowledge-graph and hybrid-search server for Obsidian vaults that exposes an MCP server, an HTTP REST API and ChatGPT Actions so AI agents can search, read and edit notes.

engraph turns a Markdown Obsidian vault into a searchable knowledge graph. It combines semantic embeddings, full-text BM25 search, wikilink graph traversal, temporal awareness and LLM-powered reranking into five search lanes fused with Reciprocal Rank Fusion, with an LLM orchestrator classifying each query to adapt lane weights, including a temporal lane for queries like "notes from last week."

An MCP server exposes 25 tools for search, section-level reads and edits, frontmatter mutation, vault health checks and note creation, usable from Claude Code, Cursor or any MCP client; an optional HTTP REST API adds 26 endpoints with API-key authentication, rate limiting and CORS for web-based agents and scripts. A file watcher keeps the index current as notes change in Obsidian, and vault health diagnostics detect orphan notes, broken wikilinks and stale content.

Everything runs locally as a single binary with no API keys or cloud services required. It is written in Rust and MIT licensed.

Website: https://github.com/devwhodevs/engraph
