Rag Vault
概要
作者による説明(英語の原文)
Local RAG MCP server with hybrid search, PDF/DOCX support, and zero-config setup
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi1項目中1項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況iとても新しい↓ 119/週 · ★ –
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: パソコンで動く
- トランスポート: stdio
- カテゴリ: 検索・AIの記憶
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:1項目中1項目に合格
- あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
- 自分で入力するもの:
BASE_DIR,DB_PATH,CACHE_DIR,MODEL_NAME,RAG_HYBRID_WEIGHT,RAG_GROUPING
必要なもの
- npmNode.jsのインストール(npxコマンドに必要)
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"rag-vault": {
"command": "npx",
"args": [
"-y",
"@robthepcguy/rag-vault"
],
"env": {
"BASE_DIR": "your-value",
"DB_PATH": "your-value",
"CACHE_DIR": "your-value",
"MODEL_NAME": "your-value",
"RAG_HYBRID_WEIGHT": "your-value",
"RAG_GROUPING": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add rag-vault --env BASE_DIR=your-value --env DB_PATH=your-value --env CACHE_DIR=your-value --env MODEL_NAME=your-value --env RAG_HYBRID_WEIGHT=your-value --env RAG_GROUPING=your-value -- npx -y @robthepcguy/rag-vault動かす前に、空欄の値を入力してください。
または、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"rag-vault": {
"command": "npx",
"args": [
"-y",
"@robthepcguy/rag-vault"
],
"env": {
"BASE_DIR": "your-value",
"DB_PATH": "your-value",
"CACHE_DIR": "your-value",
"MODEL_NAME": "your-value",
"RAG_HYBRID_WEIGHT": "your-value",
"RAG_GROUPING": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"rag-vault": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@robthepcguy/rag-vault"
],
"env": {
"BASE_DIR": "your-value",
"DB_PATH": "your-value",
"CACHE_DIR": "your-value",
"MODEL_NAME": "your-value",
"RAG_HYBRID_WEIGHT": "your-value",
"RAG_GROUPING": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
自分で入力する値
BASE_DIRenvBase directory for document storage (defaults to current working directory)DB_PATHenvPath to LanceDB database directory (defaults to ./lancedb/)CACHE_DIRenvDirectory where Transformers.js models are cached (defaults to ./models/)MODEL_NAMEenvEmbedding model name (defaults to Xenova/all-MiniLM-L6-v2)RAG_HYBRID_WEIGHTenvKeyword boost strength for hybrid search. 0.0 = semantic only, 1.0 = keyword only. Default 0.6RAG_GROUPINGenvGrouping mode: 'similar' (top group only) or 'related' (top 2 groups)
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
できること
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント RobThePCGuy で確認済みです
- … 未チェック
今もメンテナンスされている
このリポジトリはまだGitHubから読み取っていません
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- – 対象外
エンドポイントが応答する
これはパソコンで動くため、インターネット上のエンドポイントはありません
- – 対象外
OAuthでサインイン
パソコンで動き、代わりにローカルの設定を使います
- … 未チェック
ツールの説明に隠れた指示がない
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
検索・AIの記憶のほかのサーバーとの比較i
- このカテゴリのほかの5687件のうち0%よりスターが多い
- このカテゴリのほかの5687件のうち3%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの5687件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
Rag Vaultは安全ですか?
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は–、最新バージョン(1.5.3)がレジストリに届いたのは9 か月前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
代わりに使えるものは?
同じカテゴリには:Context7, Codebase Memory, Exa
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
RAG Vault
Your documents. Your machine. Your control.
RAG Vault lets your AI coding assistant search your private documents, things like API specs, research papers, and internal docs. Everything runs locally and your data stays on your machine unless you choose to pull in content from a remote URL.
One command to run, minimal setup, privacy by default.
Why RAG Vault?
| Pain Point | RAG Vault Solution |
|---|---|
| "I don't want my docs on someone else's server" | Everything stays local by default. No background cloud calls for indexing or search. |
| "Semantic search misses exact code terms" | Hybrid search with RRF fusion, optional cross-encoder reranking |
| "Setup requires Docker, Python, databases..." | One npx command plus a small MCP config block. |
| "Cloud APIs charge per query" | Free forever. No subscriptions. |
Security
RAG Vault comes with security built in:
- API Authentication: Optional API key via
RAG_API_KEY - Rate Limiting: You can throttle requests
- CORS Control: Restrict allowed origins
- Security Headers: Helmet.js protection
See SECURITY.md for complete documentation.
First-Time Setup Checklist
Before adding MCP config:
- Install Node.js 20 or newer.
- Pick a documents directory and set
BASE_DIRto that path. - Make sure your AI tool process can read
BASE_DIR. - Restart your AI tool after editing config.
Get Started Quickly
For Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": { "local-rag": { "type": "stdio", "command": "npx", "args": ["-y", "github:RobThePCGuy/rag-vault"], "env": { "BASE_DIR": "/path/to/your/documents" } } } }
Replace /path/to/your/documents with your real absolute path.
For Claude Code
Add to .mcp.json in your project directory:
{
"mcpServers": { "local-rag": { "type": "stdio", "command": "npx", "args": ["-y", "github:RobThePCGuy/rag-vault"], "env": { "BASE_DIR": "./documents", "DB_PATH": "./documents/.rag-db", "CACHE_DIR": "./.cache", "RAG_EMBEDDING_DEVICE": "cpu", "RAG_HYBRID_WEIGHT": "0.6", "RAG_GROUPING": "related" } } } }
Or add inline via CLI:
claude mcp add local-rag --scope user --env BASE_DIR=/path/to/your/documents -- npx -y github:RobThePCGuy/rag-vault
For Codex
Add to ~/.codex/config.toml:
[mcp_servers.local-rag]
command = "npx" args = ["-y", "github:RobThePCGuy/rag-vault"]
[mcp_servers.local-rag.env] BASE_DIR = "/path/to/your/documents"
Install Skills (Optional)
If you want your AI to write better queries and make more sense of results, install the RAG Vault skills:
# Claude Code (project-level - recommended for team projects)
npx github:RobThePCGuy/rag-vault skills install --claude-code
Claude Code (user-level - available in all projects)
npx github:RobThePCGuy/rag-vault skills install --claude-code --global
Codex (user-level)
npx github:RobThePCGuy/rag-vault skills install --codex
Custom location
npx github:RobThePCGuy/rag-vault skills install --path /your/custom/path
Skills teach Claude best practices for:
- Query formulation and expansion strategies
- Score interpretation. In boost mode, under 0.3 is a good match and over 0.5 is worth skipping. RRF mode scores by rank instead.
- When to use
ingest_filevsingest_data - HTML ingestion and URL handling
Restart your AI tool, and start talking:
You: "Ingest api-spec.pdf"
AI: Successfully ingested api-spec.pdf (47 chunks)
You: "How does authentication work?" AI: Based on section 3.2, authentication uses OAuth 2.0 with JWT tokens...
That's it. No Docker. No Python. No server infrastructure to manage.
Web Interface
RAG Vault has a web UI so you can manage your documents without touching the command line.
Launch the Web UI
npx github:RobThePCGuy/rag-vault web
Open http://localhost:3000 in your browser.
By default the web server binds to
127.0.0.1(loopback), so it is reachable only from this machine. To use it from another device on your network, setRAG_BIND_HOST=0.0.0.0— and setRAG_API_KEYas well, since the API is otherwise unauthenticated.
What You Can Do
- Upload documents: Drag and drop PDF, DOCX, Markdown, TXT, JSON, JSONL, and NDJSON files
- Search instantly: Type queries and see results with relevance scores
- Preview content: Click any result to see the full chunk in context
- Manage files: View all indexed documents and delete what you don't need
- Switch databases: Create and switch between multiple knowledge bases
- Monitor status: See document counts, memory usage, and search mode
- Export/Import settings: Back up and restore your vault configuration
- Theme preferences: Switch between light, dark, or system theme
- Folder browser: Navigate directories to select documents
REST API
The web server has a REST API you can hit directly. Set RAG_API_KEY to require authentication:
# With authentication (when RAG_API_KEY is set)
curl -X POST "http://localhost:3000/api/v1/search" \ -H "Authorization: Bearer your-api-key" \ -H "Content-Type: application/json" \ -d '{"query": "authentication", "limit": 5}'
Search documents (no auth needed if RAG_API_KEY isn't set)
curl -X POST "http://localhost:3000/api/v1/search" \ -H "Content-Type: application/json" \ -d '{"query": "authentication", "limit": 5}'
List all files
curl "http://localhost:3000/api/v1/files"
Upload a document
curl -X POST "http://localhost:3000/api/v1/files/upload" \ -F "file=@spec.pdf"
Delete a file
curl -X DELETE "http://localhost:3000/api/v1/files" \ -H "Content-Type: application/json" \ -d '{"filePath": "/path/to/spec.pdf"}'
Get system status
curl "http://localhost:3000/api/v1/status"
Health check (for load balancers)
curl "http://localhost:3000/api/v1/health"
Reader API Endpoints
These endpoints let you read documents and find connections across them:
# Get all chunks for a document (ordered by index)
curl "http://localhost:3000/api/v1/documents/chunks?filePath=/path/to/doc.pdf"
Find related chunks for cross-document discovery
curl "http://localhost:3000/api/v1/chunks/related?filePath=/path/to/doc.pdf&chunkIndex=0&limit=5"
Batch request for multiple chunks (efficient for UIs)
curl -X POST "http://localhost:3000/api/v1/chunks/batch-related" \ -H "Content-Type: application/json" \ -d '{"chunks": [{"filePath": "/path/to/doc.pdf", "chunkIndex": 0}], "limit": 3}'
Remote Mode
RAG Vault can also run as an HTTP server so remote MCP clients like Claude.ai, Claude Desktop, or anything that supports Streamable HTTP or SSE can connect to it.
# Start remote server (default port 3001)
npx github:RobThePCGuy/rag-vault --remote
Custom port
npx github:RobThePCGuy/rag-vault --remote --port 8080
Stdio mode is unchanged. Just leave off --remote and everything works as before with Cursor, Claude Code, and Codex.
Connecting from Claude Desktop
Add to your Claude Desktop config:
{
"mcpServers": { "rag-vault-remote": { "type": "url", "url": "http://localhost:3001/mcp" } } }
Or via Claude Code CLI:
claude mcp add --transport http rag-vault http://localhost:3001/mcp
Connecting from Claude.ai
For Claude.ai (Pro/Max/Team/Enterprise), add as a custom connector with URL https://your-host:3001/mcp. For local development, expose your server with a tunnel:
cloudflared tunnel --url http://localhost:3001
The remote server also binds to 127.0.0.1 (loopback) by default. To accept connections from other machines directly, set RAG_BIND_HOST=0.0.0.0. Set RAG_API_KEY for authentication whenever you expose the server beyond loopback (including via a tunnel). The server supports both Streamable HTTP (/mcp) and legacy SSE (/sse) transports, plus a health check at /health.
Real-World Examples
Search Your Codebase Documentation
You: "Ingest all the markdown files in /docs"
AI: Ingested 23 files (847 chunks total)
You: "What's the retry policy for failed API calls?" AI: According to error-handling.md, failed requests retry 3 times with exponential backoff: 1s, 2s, 4s...
Index Web Documentation
You: "Fetch https://docs.example.com/api and ingest the HTML"
AI: Ingested "docs.example.com/api" (156 chunks)
You: "What rate limits apply to the /users endpoint?" AI: The API limits /users to 100 requests per minute per API key...
Build a Personal Knowledge Base
You: "Ingest my research papers folder"
AI: Ingested 12 PDFs (2,341 chunks)
You: "What do recent studies say about transformer attention mechanisms?" AI: Based on attention-mechanisms-2024.pdf, the key finding is...
Search Exact Technical Terms
RAG Vault's hybrid search catches both meaning and exact matches:
You: "Search for ERR_CONNECTION_REFUSED"
AI: Found 3 results mentioning ERR_CONNECTION_REFUSED:
- troubleshooting.md - "When you see ERR_CONNECTION_REFUSED..."
- network-errors.pdf - "Common causes include..."
Pure semantic search would miss this. RAG Vault finds it.
How It Works
Document → Parse → Chunk by meaning → Embed locally → Store in LanceDB
↓ Query → Embed → Vector search + BM25 → Fusion → Optional reranking → Results
Smart chunking: Splits by meaning, not character count. Keeps code blocks intact.
Hybrid search: Two fusion modes that combine vector similarity with BM25 keyword matching:
- Boost mode (default): BM25 boosts vector search distances multiplicatively. Simple and predictable.
- RRF mode (opt-in via
RAG_SEARCH_MODE=rrf): Reciprocal Rank Fusion treats vector and BM25 as independent voters. This can surface documents that vector search alone would miss.
Cross-encoder reranking (opt-in): After the first pass, a cross-encoder model (Xenova/ms-marco-MiniLM-L-6-v2, ~23MB) scores each (query, passage) pair together for tighter relevance ranking. Turn it on with RAG_RERANKER_ENABLED=true.
Query expansion (opt-in): Generates reformulated queries to improve recall when searches are paraphrased or conceptual. Two backends: local template-based expansion (default, fully offline) or LLM-based HyDE through an external API. Turn it on with RAG_HYDE_ENABLED=true.
Quality filtering: Groups results by relevance gaps instead of arbitrary top-K cutoffs.
Local by default: Embeddings via Transformers.js. Storage via LanceDB. Network is only needed for initial model download or if you explicitly ingest remote URLs.
MCP tools included: query_documents, ingest_file, ingest_data, delete_file, list_files, status, feedback_pin, feedback_dismiss, and feedback_stats.
Supported Formats
| Format | Extension | Notes |
|---|---|---|
.pdf | Full text extraction, header/footer filtering | |
| Word | .docx | Tables, lists, formatting preserved |
| Markdown | .md | Code blocks kept intact |
| Text | .txt | Plain text |
| JSON | .json | Converted to searchable key-value text |
| JSONL / NDJSON | .jsonl, .ndjson | Parsed line-by-line for logs and structured records |
| HTML | via ingest_data | Auto-cleaned with Readability |
Configura
冒頭だけを表示しています。続きはリポジトリで読めます