Local Rag
@TheWinci
About Local Rag
Semantic code search for AI agents — hybrid vector + BM25 with cross-encoder reranking, AST-aware chunking for 14 languages, conversation memory, code annotations, and search analytics. Zero config, zero API keys. Just bunx.
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"local-rag": {
"command": "bunx",
"args": [
"@winci/local-rag@latest",
"serve"
],
"env": {
"RAG_PROJECT_DIR": "/path/to/your/project"
}
}
}
}Tools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is Local Rag?
Local Rag is a persistent project memory tool for AI coding agents. It provides semantic code search, cross-session conversation memory, auto-generated project wikis, and dependency graph analysis—all running fully locally using SQLite and in-process embeddings.
How to use Local Rag?
Install with bunx mimirs init --ide <ide> (e.g., claude, cursor, windsurf, copilot, jetbrains). Ensure SQLite with extension support is installed (brew install sqlite on macOS). No API keys, cloud, or Docker required—just Bun and SQLite.
Key features of Local Rag
- Hybrid vector + BM25 search boosted by dependency graph centrality
- Cross-session conversation indexing and checkpoints
- Auto-generated structured markdown wiki with Mermaid diagrams
- Annotations attached to files or symbols surfacing in results
- Dependency graph and reverse-dependency lookup for blast radius
- Local analytics logging zero-result and low-relevance queries
Use cases of Local Rag
- Quickly find code by meaning instead of filename or keyword search
- Recover context from past sessions—discussions, decisions, and blockers
- Understand codebase structure and impact before refactoring
- Expose documentation gaps through query analytics
- Mark milestones and direction changes with searchable checkpoints
FAQ from Local Rag
What does Local Rag do that alternatives don’t?
It combines AST-aware chunking (24 languages), local embeddings, cross-session memory, and checkpoints—all in one local tool with no API keys. The table in the README shows it reduces token cost from ~380K to ~91K per prompt with 93–98% recall.
Where does my data live?
All data is stored in a .mimirs/ directory inside your project. Nothing leaves your machine—the tool is fully local and privacy-preserving.
What languages and file formats does it support?
AST-aware chunking covers 24 languages via tree-sitter (TypeScript, Python, Go, Rust, Java, C, C++, C#, Ruby, PHP, Scala, Kotlin, Lua, Zig, Elixir, Haskell, OCaml, Dart, Bash/Zsh, TOML, YAML, HTML, CSS/SCSS/LESS). Many other formats fall back to paragraph splitting.
Does Local Rag require an embedding API or cloud service?
No. Embeddings are computed in-process using Transformers.js + ONNX with the all-MiniLM-L6-v2 model. The vector store is sqlite-vec—a single .db file.
What transport and authentication does it use?
Local Rag uses stdio transport via the MCP SDK. There is no network service; authentication is not required because everything runs locally.
More Memory & Knowledge MCP servers
Docs MCP Server
araboldGrounded Docs MCP Server: Open-Source Alternative to Context7, Nia, and Ref.Tools
RAG Documentation MCP Server
hannesrudolphAn MCP server implementation that provides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context.
Zettelkasten MCP Server
entanglrA Model Context Protocol (MCP) server that implements the Zettelkasten knowledge management methodology, allowing you to create, link, explore and synthesize atomic notes through Claude and other MCP-compatible clients.
Notion MCP Server
makenotionOfficial Notion MCP Server
Context7 MCP - Up-to-date Docs For Any Cursor Prompt
upstashContext7 Platform -- Up-to-date code documentation for LLMs and AI code editors
Comments