HomeSearch & Research › minirag-mcp

minirag-mcp

Local-first RAG MCP server: hybrid search over a folder of your own documents

Python
★ 66 stars Last pushed 2026-09-07 License: MIT

Connect

Review any command before running it. Package names and URLs come from the server's own registry entry.

Package (pypi 0.6.1)

uvx minirag-mcp

Or add to your MCP client config:

{
  "mcpServers": {
    "minirag-mcp": {
      "command": "uvx",
      "args": [
        "minirag-mcp"
      ],
      "env": {
        "BASE_DIR": "<YOUR_VALUE>",
        "BASE_DIRS": "<YOUR_VALUE>",
        "DB_PATH": "<YOUR_VALUE>",
        "CACHE_DIR": "<YOUR_VALUE>",
        "MODEL_NAME": "<YOUR_VALUE>",
        "MAX_FILE_SIZE": "<YOUR_VALUE>",
        "CHUNK_TOKEN_BUDGET": "<YOUR_VALUE>",
        "RAG_HYBRID_WEIGHT": "<YOUR_VALUE>",
        "RAG_GROUPING": "<YOUR_VALUE>",
        "RAG_MAX_DISTANCE": "<YOUR_VALUE>",
        "RAG_MAX_FILES": "<YOUR_VALUE>",
        "RAG_INSTRUCTIONS_APPEND": "<YOUR_VALUE>",
        "ALLOW_PRIVATE_URLS": "<YOUR_VALUE>"
      }
    }
  }
}
  • BASE_DIR — One document root; also the security boundary for file access. Defaults to the process working directory. Ignored when BASE_DIRS is set.
  • BASE_DIRS — JSON array of document roots, e.g. ["/docs/a", "/docs/b"]. Takes precedence over BASE_DIR. An invalid value is a hard configuration error.
  • DB_PATH — LanceDB index directory. Defaults to <first root>/.minirag/lancedb, so each corpus gets its own index.
  • CACHE_DIR — Embedding model cache. Defaults to the platform user cache dir, so the ~220 MB model is downloaded once and shared.
  • MODEL_NAME — fastembed model id. Changing it makes existing vectors incompatible with new queries; pair with a new DB_PATH or a full re-ingest.
  • MAX_FILE_SIZE — Per-file size limit in bytes, enforced before parsing.
  • CHUNK_TOKEN_BUDGET — Retrieval-unit size in the embedding model's own tokens. Range 16-128; the ceiling is the model's trained sequence length.
  • RAG_HYBRID_WEIGHT — Keyword weight in the weighted RRF fusion, range 0.0-1.0. 0 is vector-only; higher values raise the BM25 contribution.
  • RAG_GROUPING — Result grouping filter. 'similar' keeps only the closest group; 'related' also keeps the next one. Unset means no grouping filter.
  • RAG_MAX_DISTANCE — Drop results whose vector distance exceeds this value. Lower is stricter. Unset means no distance filter.
  • RAG_MAX_FILES — Keep chunks from at most this many best-scoring files. Unset means no per-file filter.
  • RAG_INSTRUCTIONS_APPEND — Extra paragraph appended to the instructions the server hands the client at connect time, for corpus-specific guidance.
  • ALLOW_PRIVATE_URLS — Let ingest_url fetch hosts resolving to loopback, link-local, private, reserved or unspecified addresses. Off by default.

Related servers

Data from the Official MCP Registry