Ragdocs
Manage and search documentation using advanced semantic search and retrieval-augmented generation capabilities. Supports document management tasks such as adding, listing, and deleting documents with automatic text chunking and vector storage through Qdrant.
Author

heltonteixeira
Quick Info
Actions
Tags
RagDocs MCP Server
A Model Context Protocol (MCP) server that provides RAG (Retrieval-Augmented Generation) capabilities using Qdrant vector database and Ollama/OpenAI embeddings. This server enables semantic search and management of documentation through vector similarity.
Features
- Add documentation with metadata
- Semantic search through documents
- List and organize documentation
- Delete documents
- Support for both Ollama (free) and OpenAI (paid) embeddings
- Automatic text chunking and embedding generation
- Vector storage with Qdrant
Prerequisites
- Node.js 16 or higher
- One of the following Qdrant setups:
- Local instance using Docker (free)
- Qdrant Cloud account with API key (managed service)
- One of the following for embeddings:
- Ollama running locally (default, free)
- OpenAI API key (optional, paid)
Available Tools
1. add_document
Add a document to the RAG system.
Parameters:
url
(required): Document URL/identifiercontent
(required): Document contentmetadata
(optional): Document metadatatitle
: Document titlecontentType
: Content type (e.g., "text/markdown")
2. search_documents
Search through stored documents using semantic similarity.
Parameters:
query
(required): Natural language search queryoptions
(optional):limit
: Maximum number of results (1-20, default: 5)scoreThreshold
: Minimum similarity score (0-1, default: 0.7)filters
:domain
: Filter by domainhasCode
: Filter for documents containing codeafter
: Filter for documents after date (ISO format)before
: Filter for documents before date (ISO format)
3. list_documents
List all stored documents with pagination and grouping options.
Parameters (all optional):
page
: Page number (default: 1)pageSize
: Number of documents per page (1-100, default: 20)groupByDomain
: Group documents by domain (default: false)sortBy
: Sort field ("timestamp", "title", or "domain")sortOrder
: Sort order ("asc" or "desc")
4. delete_document
Delete a document from the RAG system.
Parameters:
url
(required): URL of the document to delete
Installation
npm install -g @mcpservers/ragdocs
MCP Server Configuration
{
"mcpServers": {
"ragdocs": {
"command": "node",
"args": ["@mcpservers/ragdocs"],
"env": {
"QDRANT_URL": "http://127.0.0.1:6333",
"EMBEDDING_PROVIDER": "ollama"
}
}
}
}
Using Qdrant Cloud:
{
"mcpServers": {
"ragdocs": {
"command": "node",
"args": ["@mcpservers/ragdocs"],
"env": {
"QDRANT_URL": "https://your-cluster-url.qdrant.tech",
"QDRANT_API_KEY": "your-qdrant-api-key",
"EMBEDDING_PROVIDER": "ollama"
}
}
}
}
Using OpenAI:
{
"mcpServers": {
"ragdocs": {
"command": "node",
"args": ["@mcpservers/ragdocs"],
"env": {
"QDRANT_URL": "http://127.0.0.1:6333",
"EMBEDDING_PROVIDER": "openai",
"OPENAI_API_KEY": "your-api-key"
}
}
}
}
Local Qdrant with Docker
docker run -d --name qdrant -p 6333:6333 -p 6334:6334 qdrant/qdrant
Environment Variables
QDRANT_URL
: URL of your Qdrant instance- For local: "http://127.0.0.1:6333" (default)
- For cloud: "https://your-cluster-url.qdrant.tech"
QDRANT_API_KEY
: API key for Qdrant Cloud (required when using cloud instance)EMBEDDING_PROVIDER
: Choice of embedding provider ("ollama" or "openai", default: "ollama")OPENAI_API_KEY
: OpenAI API key (required if using OpenAI)EMBEDDING_MODEL
: Model to use for embeddings- For Ollama: defaults to "nomic-embed-text"
- For OpenAI: defaults to "text-embedding-3-small"
License
Apache License 2.0