io.github.Brightdotdev/darwin-rag
OfficialClick 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., "@io.github.Brightdotdev/darwin-ragSearch the knowledge base for the incident response runbook and summarize the steps."
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.
Darwin RAG
A local-first RAG engine that ingests documents, indexes them with BM25 + dense embeddings, and exposes search via an MCP server for AI agent integration.
Ingestion — PDF, Markdown, HTML, images (OCR), CSV, Excel, ODS, URLs
Indexing — BM25 keyword + dense embedding hybrid index with configurable chunking strategies
Search — Hybrid, semantic, or keyword retrieval with reranking, diversity rerank, and structural penalties
Generation — LLM-backed answer synthesis via LiteLLM (OpenAI, Anthropic, Gemini, etc.)
Observability — Structured logging with per-session history, queryable via MCP
Isolation — Multiple independent stores for tenant/project separation
Deployment — stdio (AI agent subprocess), SSE, or Streamable HTTP; Docker-ready
Local-first — Everything runs locally, fully offline-capable after setup
Built by BrightDotDev.
Quick Start
1. Install
pip install darwin-rag2. Set up models
# Interactive — detects hardware, pick your models
darwin-admin setup interactive
# Or one-shot (embedding-only, no prompts)
darwin-admin setup --preset required3. Start the MCP server & connect
# stdio mode — for AI agent subprocess (Claude Desktop, Cursor, etc.)
darwin mcp
# Or HTTP mode — for remote clients
darwin mcp --http --port 8765Configure your MCP client:
{
"mcpServers": {
"darwin": {
"command": "darwin",
"args": ["mcp"],
"env": {
"OPENAI_API_KEY": "sk-..." // At least one LLM provider key
}
}
}
}Or generate config automatically:
darwin config claude # Claude Desktop config
darwin config cursor # Cursor config
darwin config all --copy # All clients + copy to clipboardRelated MCP server: ragi
MCP Tools
Tool | Description |
| Query the knowledge base with hybrid/semantic/keyword search |
| List saved search results |
| Load a saved search result by filename |
| Ingest + index documents from a path or URL |
| Delete pipeline artifacts for specific files |
| Create a new isolated data store |
| List all tracked files with pipeline status |
| Detailed status for a single file across all stages |
| Query session logs (oldest first, INFO excluded) |
Full documentation: docs/mcp.md
Remote / HTTP Mode
Start the server on a network-accessible endpoint:
# SSE transport (legacy)
darwin mcp --sse --host 0.0.0.0 --port 8765
# Streamable HTTP transport (recommended for production)
darwin mcp --http --host 0.0.0.0 --port 8765Configure your MCP client with the URL:
{
"mcpServers": {
"darwin": {
"url": "http://your-host:8765/mcp" // or /sse for SSE mode
}
}
}Environment Variables
Variable | Required | Description |
| No* | OpenAI provider key |
| No* | Anthropic provider key |
| No* | Google Gemini provider key |
| No* | Mistral AI provider key |
| No* | Groq provider key |
| No* | Cohere provider key |
| No* | Together AI provider key |
| No* | OpenRouter provider key |
| No* | DeepSeek provider key |
| No | Override the base data directory |
| No | Set to any value to disable ANSI color output |
* At least one LLM provider key is required for answer generation. Search/indexing works without any.
Setup Details
Command | What it does |
| Guided setup — detect hardware, choose models |
| Download embedding model only (fastest) |
| Embedding + reranker + OCR models |
| Reconfigure logging only |
| Validate current setup |
See docs/setup.md for the full walkthrough including Docker, from-source install, and API key configuration.
CLI Reference
darwin — User CLI
Command | Description |
| Start MCP server (stdio, |
| Generate MCP client config |
darwin-admin — Power-user CLI
Command | Description |
| Setup models, logging, and configuration |
| System status overview |
| Model registry: list, install, switch, keys |
| Data store: status, files, audit, health, repair |
| Ingestion pipeline: run, ingest, index, purge |
| Interactive search |
| Structured log viewer and management |
| System information |
| Remove Darwin data and configuration |
See docs/admin.md for the full command reference.
Documentation
Doc | What |
Full setup walkthrough | |
MCP server, tools, resources, transports | |
Admin CLI reference | |
For developers and contributors | |
Ingestion & indexing | |
Search engine | |
DarwinStore | |
Model registry & inference | |
Structured logging | |
High-level business logic |
Contributing
Found a bug? Want to add something? You're welcome here.
Issues — open one at github.com/BrightDotDev/DARWIN/issues
Code — fork, branch, PR. Keep it minimal.
AI-generated code is fine — but you own what you ship. Test it before submitting.
Read CONTRIBUTING.md for the full guidelines.
License
MIT with Attribution — see LICENSE.
Core architecture and implementation by BrightDotDev.
This 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.
Related MCP Servers
- Flicense-qualityBmaintenanceEnables any MCP-compatible AI assistant to search, filter, and retrieve information from a local document collection using a hybrid search pipeline with vector, BM25, reranking, and LLM enrichment.Last updated4
- AlicenseAqualityBmaintenanceLocal-first RAG indexing and semantic search MCP server. Enables document retrieval and context-aware queries using local embedding models.Last updated325MIT
- AlicenseBqualityBmaintenanceLocal end-to-end RAG system for agentic code editors, exposing retrieval-augmented generation via MCP to any compatible client.Last updated331MIT
- Alicense-qualityAmaintenanceLocal-first MCP server enabling cross-modal search across text, images, documents, video, and audio transcripts. Provides 26 tools for ingesting, searching, and navigating local file systems with a 3-stage pipeline including reranking.Last updated3MIT
Related MCP Connectors
Multi-engine search for AI agents. Trust scoring, local corpus, MCP-native. Self-hostable, BYOK.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Private-by-default, local-first memory/context/task orchestrator for MCP apps and agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Brightdotdev/DARWIN'
If you have feedback or need assistance with the MCP directory API, please join our Discord server