rag-retriever-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@rag-retriever-mcpsearch my indexed documents for references to machine learning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
rag-retriever
A lightweight, local-first document retrieval engine that mounts to an agent as an MCP tool. Drop files in; the agent searches them and answers with its own LLM. There is no LLM in here — this is only the "front half" of RAG (extract → chunk → embed → store + similarity search).
your agent (owns the LLM)
│ calls MCP tool: search("question")
▼
rag-retriever ──► extract ─► chunk ─► embed ─► LanceDB
▲ │
└────────── returns relevant passages ◄────────┘
│
agent reads passages → answers with its own LLMBuilt from the same proven pieces as Open Notebook (file extraction + bge-m3 embeddings + vector search), minus the heavyweight backend, UI, and answer/podcast generation you don't need.
Why this shape
One LLM, not two. The retriever never answers; your agent does. You keep full control of reasoning, prompts, and cost.
Local-first. Default backend (
fastembed) runs entirely offline, no server.Pluggable embeddings. Switch between fully local and a China-friendly cloud API (SiliconFlow) with one env var — no code change.
Related MCP server: MemoryMesh
Install
cd rag-retriever
uv sync
cp .env.example .env # then pick your embedding backendConfigure the embedding backend (.env)
| What it uses | Notes |
| fastembed (ONNX, in-process) | 100% offline, no server, heavier first install |
| local Ollama daemon |
|
| OpenAI-compatible API (e.g. SiliconFlow) | needs |
⚠️ Index-time and query-time must use the same backend + model. Changing the model means re-indexing everything.
Use (CLI, for testing)
uv run rag-retriever index "C:\path\to\docs" # a file or a whole folder
uv run rag-retriever search "什么是表见代理" -k 5
uv run rag-retriever list
uv run rag-retriever statsMount as an MCP server (the real entry point)
Run uv run rag-retriever-mcp (stdio). Register it with your MCP client. For
Claude Code, add to your MCP config:
{
"mcpServers": {
"rag-retriever": {
"command": "uv",
"args": ["run", "--directory", "D:\\Vibe Coding Items\\rag-retriever", "rag-retriever-mcp"]
}
}
}Tools exposed: index_path, search, list_sources, stats.
Supported files
pdf, docx, pptx, xlsx, html, md, txt, csv, json, epub (via markitdown). Scanned / image-only PDFs need an OCR engine (tesseract) installed separately; without it they extract empty and are reported as skipped.
Layout
rag_retriever/
config.py # env-driven config; picks the embedding backend
extract.py # file -> text (markitdown)
chunk.py # token-based chunking with overlap
embed.py # local | ollama | openai-compatible backends
store.py # LanceDB vector store (embedded, no server)
pipeline.py # ingest + search orchestration (no LLM)
server.py # MCP server (agent-facing)
cli.py # manual CLIThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/code-lawyer/rag-retriever'
If you have feedback or need assistance with the MCP directory API, please join our Discord server