Minima-AI-Inc/minima

View on GitHub ↗

On-premises conversational RAG with configurable containers

1,048 ★107 forksPythonUpdated 7mo ago

What you need to know

Open-source, on-premises/containerized RAG engine that indexes local documents and exposes them to ChatGPT (custom GPT), Anthropic Claude, and MCP clients, with fully-local Ollama or custom OpenAI-compatible LLM modes.

Install

./run.sh
docker compose -f docker-compose-ollama.yml --env-file .env up --build

Usage

  • Copy .env.sample to .env and set LOCAL_FILES_PATH, EMBEDDING_MODEL_ID, EMBEDDING_SIZE, plus OLLAMA_MODEL/RERANKER_MODEL (Ollama) or LLM_BASE_URL/LLM_MODEL (custom LLM).
  • For Claude Desktop add the minima MCP server via 'uv --directory <project>/mcp-server run minima' in claude_desktop_config.json.
  • For GitHub Copilot configure .vscode/mcp.json to run run_in_copilot.sh; the chat UI runs at http://localhost:3000.
  • For ChatGPT mode, copy the OTP printed in the docker terminal into the Minima GPT.

Key features

  • Four modes: isolated Ollama, custom OpenAI-compatible LLM (vLLM, TGI, LiteLLM, LocalAI, OpenAI API, etc.), ChatGPT custom GPT, and Anthropic Claude.
  • Recursive indexing of .pdf, .xls, .docx, .txt, .md, and .csv files under LOCAL_FILES_PATH.
  • Qdrant vector storage with Sentence Transformer embeddings.
  • Optional Electron desktop app (cd electron && npm install && npm start) for fully local installs.

Best for

Privacy-conscious on-premises RAG over your own documents with ChatGPT, Claude, or local LLMs.

Caveats

  • Only Sentence Transformer embedding models are currently supported; EMBEDDING_SIZE must match the model.
  • Requires Python >=3.10 and uv installed for MCP usage.
  • Mozilla Public License v2.0 (MPLv2).
  • Custom LLM mode skips reranking and uses direct retrieval for performance.
Platforms: Local · WebClients: Claude Desktop · GitHub Copilot · ChatGPT

Reviewed 2026-08-18

Topics

Stars
1,048★
Forks
107
Language
Python
License
MPL-2.0
Created
2024-11-02
Last push
2026-01-22