OpenRAG Server
БесплатноНе проверенAn open-source MCP server for RAG over personal documents. Supports three parallel strategies — Traditional, Contextual, and Graph RAG — with all data stored lo
Описание
An open-source MCP server for RAG over personal documents. Supports three parallel strategies — Traditional, Contextual, and Graph RAG — with all data stored locally for privacy.
README
Python 3.12 License: MIT Code style: ruff
An open-source MCP server for RAG over personal documents. Supports three parallel strategies — Traditional, Contextual, and Graph RAG — with all data stored locally for privacy.
Quick Start (Docker)
No Python or conda required.
# 1. Clone the repository
git clone https://github.com/janik96v/OpenRAG.git
cd OpenRAG
# 2. Copy and adjust the config (change NEO4J_PASSWORD etc.)
cp .env.docker.example .env
# 3. Start everything
docker compose up -d
Neo4j and the MCP server start automatically. ChromaDB data is persisted in ./chroma_db, Neo4j data in a Docker volume.
For Contextual and Graph RAG, Ollama must run on your host:
brew install ollama # macOS — Linux/Windows: https://ollama.ai/download
ollama serve
ollama pull llama3.2:3b
Traditional RAG only? Set
CONTEXTUAL_ENABLED=falseandGRAPH_ENABLED=falsein.env— no Ollama needed.
See docs/installation.md for the full setup guide including configuration options and troubleshooting.
Configure Claude Code / Claude Desktop
Claude Code (CLI)
claude mcp add openrag -- docker compose \
-f /absolute/path/to/OpenRAG/docker-compose.yml \
run --rm -i openrag
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent config file on your OS:
{
"mcpServers": {
"openrag": {
"command": "docker",
"args": [
"compose",
"-f", "/absolute/path/to/OpenRAG/docker-compose.yml",
"run", "--rm", "-i", "openrag"
]
}
}
}
Replace /absolute/path/to/OpenRAG/docker-compose.yml with your actual path. Restart Claude Desktop after saving.
MCP Tools
| Tool | Description |
|---|---|
ingest_text |
Ingest raw text content. Traditional RAG is immediate; Contextual and Graph RAG run in the background. |
query_documents |
Semantic search. Choose rag_type ("traditional", "contextual", "graph") and optionally max_hops (1–5) for Graph RAG. |
list_documents |
List all ingested documents with metadata. |
delete_document |
Remove a document from all RAG collections. |
get_stats |
System statistics: collection sizes, configuration, background task status. |
RAG Strategy Comparison
| Traditional | Contextual | Graph | |
|---|---|---|---|
| Speed | Fastest | Background | Background |
| Accuracy | Good | Better | Best for relationships |
| Use Case | Direct facts | Complex queries | Multi-hop reasoning |
| Dependencies | ChromaDB | + Ollama | + Ollama + Neo4j |
| Collections | 1 | 2 | 3 |
Architecture
src/openrag/
├── server.py # MCP server entry point
├── config.py # Centralized configuration (pydantic-settings)
├── core/
│ ├── chunker.py # Token-aware text chunking (tiktoken)
│ ├── embedder.py # Sentence-transformers embeddings
│ ├── vector_store.py # Traditional RAG (ChromaDB)
│ ├── contextual_processor.py # Context generation (Ollama)
│ ├── contextual_vector_store.py # Dual-collection management
│ ├── graph_processor.py # Entity extraction (Ollama + Neo4j)
│ ├── graph_vector_store.py # Triple-collection + graph traversal
│ └── ollama_client.py # Ollama API client
├── tools/ # MCP tool implementations
├── models/ # Pydantic data models
└── utils/ # Logging, validation, background tasks
All three RAG types share the same ChromaDB instance via separate collections:
- Traditional →
documents - Contextual →
documents+documents_contextual - Graph →
documents+documents_contextual+documents_graph+ Neo4j
Smoke Tests
Manual end-to-end scripts for verifying each RAG strategy are in tests/quick/:
# Traditional RAG (no external dependencies)
python tests/quick/test_normalRAG.py
# Contextual RAG (requires Ollama)
python tests/quick/test_contextualRAG.py
# Graph RAG (requires Ollama + Neo4j, takes 3–5 min)
python tests/quick/test_graphRAG.py
For automated unit/integration tests, run pytest tests/.
Documentation
| Guide | Description |
|---|---|
| docs/installation.md | Docker setup, configuration, MCP wiring, troubleshooting |
| docs/quick-start.md | Step-by-step usage guide |
| docs/architecture.md | System design deep-dive |
License
MIT License — see LICENSE
Установка OpenRAG Server
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/janik96v/OpenRAGFAQ
OpenRAG Server MCP бесплатный?
Да, OpenRAG Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для OpenRAG Server?
Нет, OpenRAG Server работает без API-ключей и переменных окружения.
OpenRAG Server — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить OpenRAG Server в Claude Desktop, Claude Code или Cursor?
Открой OpenRAG Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare OpenRAG Server with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
