Skip to main content

General-purpose RAG MCP plugin — index anything, search with hybrid BM25+semantic, zero-config

Project description

omni-rag-mcp

A general-purpose RAG MCP plugin for token-efficient semantic search over any directory of files. Auto-ingests the current working directory on first search and provides hybrid search (BM25 + semantic), directory overview, structural analysis, and dependency graphs.

Zero-config by default: local Qdrant storage, ONNX embeddings, no external services required. Supports code, markdown, PDFs, CSVs, and more via pluggable extractors.

Quick Start

pip install omni-rag-mcp
omni-rag-setup

That's it. Restart Claude Code and the plugin auto-indexes your working directory on first search.

How It Works

Your Files  ->  Extractors  ->  Chunking  ->  Embedding  ->  Qdrant (local)
                                                                 |
Claude Code ->  MCP Tool Call  ->  Hybrid Search  ->  Relevant Snippets
  1. First search auto-ingests your working directory (extracts content, chunks, generates embeddings, stores in local Qdrant)
  2. Subsequent searches are fast hybrid lookups (BM25 + semantic) -- no re-ingestion needed
  3. Incremental updates detect git changes and only re-embed modified files

MCP Tools

Tool Purpose
search Hybrid search over indexed files (auto-ingests if needed)
search_by_file Search filtered by file path pattern
get_context Compressed directory overview (languages, structure, dependencies)
get_file_signatures Function/class signatures without reading every file
get_dependency_graph Internal import/dependency graph
stats Index size and configuration
ingest Manual re-index (incremental by default, force=True for full)
check_status Is the index current? Any uncommitted changes?

Embedding Providers

Zero-config by default. Choose your provider:

Provider Config Notes
ONNX (default) None needed Auto-downloads all-MiniLM-L6-v2 (23MB, 384-dim)
Ollama OMNI_RAG_EMBEDDING_PROVIDER=ollama Requires Ollama running with model pulled
OpenAI OMNI_RAG_EMBEDDING_PROVIDER=openai + OMNI_RAG_OPENAI_API_KEY=sk-... text-embedding-3-small
Voyage OMNI_RAG_EMBEDDING_PROVIDER=voyage + OMNI_RAG_VOYAGE_API_KEY=... voyage-code-3 (optimized for code)

Optional Extras

pip install omni-rag-mcp[pdf]    # PDF extraction (PyMuPDF)
pip install omni-rag-mcp[docx]   # Word document extraction
pip install omni-rag-mcp[image]  # Image/OCR extraction (Tesseract + Pillow)
pip install omni-rag-mcp[all]    # All optional extractors

Storage

By default, uses Qdrant in local/on-disk mode -- no Docker needed. Data stored in .omni-rag/ under your project directory.

For remote Qdrant:

OMNI_RAG_QDRANT_MODE=remote
OMNI_RAG_QDRANT_HOST=your-host
OMNI_RAG_QDRANT_PORT=6333

Configuration

All settings via environment variables with OMNI_RAG_ prefix. See config/.env.example for the full reference.

Legacy RAG_ prefix variables are still supported with deprecation warnings.

Development

# Install with dev dependencies
pip install -e ".[dev]"

# Run tests
python -m pytest tests/ -v

# Health check
python scripts/health_check.py

Manual MCP Registration

If omni-rag-setup doesn't work, add this to your Claude Code MCP config:

{
  "mcpServers": {
    "omni-rag": {
      "command": "omni-rag"
    }
  }
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omni_rag_mcp-3.0.1.tar.gz (172.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

omni_rag_mcp-3.0.1-py3-none-any.whl (55.8 kB view details)

Uploaded Python 3

File details

Details for the file omni_rag_mcp-3.0.1.tar.gz.

File metadata

  • Download URL: omni_rag_mcp-3.0.1.tar.gz
  • Upload date:
  • Size: 172.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for omni_rag_mcp-3.0.1.tar.gz
Algorithm Hash digest
SHA256 1c75f840de0284f3ddad62a9ad48f28240936e595e7bc0101087e20d62a5cf77
MD5 fecd60f5824ac763357c70dba1e43be6
BLAKE2b-256 84c6e922f321af87775caf7d5b9c4b67393ea83ce7f6eaa691da5bb03add4e76

See more details on using hashes here.

Provenance

The following attestation bundles were made for omni_rag_mcp-3.0.1.tar.gz:

Publisher: ci.yml on Suyash2013/codebase-rag-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omni_rag_mcp-3.0.1-py3-none-any.whl.

File metadata

  • Download URL: omni_rag_mcp-3.0.1-py3-none-any.whl
  • Upload date:
  • Size: 55.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for omni_rag_mcp-3.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 56f79d413bc42f2f9c4b5c70ee8f3a3339581ac31587cc5c1f377d1b310d9219
MD5 a99ec3fa73f1e9d7edf2e9aca4b3d35a
BLAKE2b-256 b4075f8ad26e1e2ae56a8caac45dc8cfc49330a95bfa3bef89023641369150fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for omni_rag_mcp-3.0.1-py3-none-any.whl:

Publisher: ci.yml on Suyash2013/codebase-rag-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page