Local Rag MCP server
Easy-to-setup local RAG server with minimal configuration
400 stars4.8k downloads/wk
Reviews
Write oneNobody has reviewed Local Rag yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Local Rag tools (9, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
delete_filewrite actionDelete a previously ingested file or data from the vector database. Use filePath for files ingested via ingest_file, or source for data ingested via ingest_data. Either filePath or source must be provided. Returns deleted (operation succeeded), removedChunks, and existed (whether anything was actually present).
ingest_dataIngest in-memory content as a string (use ingest_file for files on disk). The source identifier enables re-ingestion to update existing content. Returns { filePath, chunkCount, timestamp, fileTitle }.
ingest_fileIngest a document file (PDF, DOCX, TXT, MD) into the vector database. Path must be absolute; re-ingesting the same path replaces its existing data. Returns { filePath, chunkCount, timestamp, fileTitle }.
list_filesList supported files (PDF, DOCX, TXT, MD) under the configured base directories and whether each is ingested. Returns { baseDirs, files, sources }; sources lists ingested items reported apart from the file scan, chiefly ingest_data content (web pages, clipboard, etc.).
query_documentsSearch ingested documents with hybrid keyword + semantic matching. Returns results sorted by relevance, each with filePath, chunkIndex, text, fileTitle, score (0 = best, higher = worse), and source (for ingest_data items).
read_chunk_neighborsRead the chunks immediately before and after a query_documents result, in the same document, for more surrounding context. Pass chunkIndex from the result plus exactly one of filePath (ingest_file) or source (ingest_data). Returns the target chunk (isTarget: true) and its neighbors, ascending by chunkIndex; an out-of-range chunkIndex returns []. Defaults: before=2, after=2 (max … each).
statusGet index status: { documentCount, chunkCount, memoryUsage (MB), uptime (s), ftsIndexEnabled, searchMode }.
sync_startReconcile the index with the files on disk: ingest new and changed files, leave unchanged files alone, and remove index entries for files that are gone. Each changed PDF is re-ingested with the visual profile ("fast" or "quality") already recorded for it, so a PDF indexed with VLM captions keeps them; a PDF with no recorded profile stays text-only. There is no option to change a profile here — use
sync_statusGet the current or latest sync job record: { jobId, state ("running" | "succeeded" | "failed"), total (null until scanning has counted the files on disk), completed (upserted + skipped + empty; pruned is counted separately), summary { upserted, skipped, empty, pruned }, warnings, error (null unless the job failed) }. An unknown jobId means the job was replaced by a newer one or lost with a previou
Public scan report
scanner v0.1.5 · 2026-09-19 · same rubric, same numbers if you re-run it
- Code scan117 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 2 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Install directly
Runs npx -y mcp-local-rag on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcp-local-rag -- npx -y mcp-local-rag
Local Rag: common questions
- Is Local Rag MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Local Rag safety report
- How do I install Local Rag?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does Local Rag need an API key?
- No secret keys are declared. It reads 15 settings from the environment.
- Is Local Rag maintained?
- The last commit was 2 days ago (2026-09-18). The latest release is v0.18.6.
- What can I use instead of Local Rag?
- Servers from other publishers that do the same job: Agent-Native Chat MCP server, Google Surf MCP server and PDF MCP server. Compare all Local Rag alternatives.
Alternatives to Local Rag
Same job from other publishers: the closest match first, then the best rated.
- Agent-Native ChatMinimal chat-first app with durable threads, actions, and the app-agent loopnot reviewedEstablishedA
- Google SurfWeb, academic and code search with graph RAG, data lineage, ontology and cross-project schema links.not reviewedEstablishedB
- PDFAgentic RAG over one PDF or a whole folder: hybrid search, selective page reads, tables, OCR.not reviewedEstablishedA
- haiku.ragLocal-first agentic RAG with citations - hybrid search, reranking, multimodal document retrievalnot reviewedEstablishedA
- rag-ratRepository intelligence, code graph, history, papertrail, and cross-agent memory for coding agents.not reviewedGrowingB