Home

Awesome

MCP-Ragdocs

A Model Context Protocol (MCP) server that enables semantic search and retrieval of documentation using a vector database (Qdrant). This server allows you to add documentation from URLs or local files and then search through them using natural language queries.

Version

Current version: 0.1.6

Features

Installation

Install globally using npm:

npm install -g @qpd-v/mcp-server-ragdocs

This will install the server in your global npm directory, which you'll need for the configuration steps below.

Requirements

Qdrant Setup Options

Option 1: Local Qdrant

  1. Using Docker (recommended):
docker run -p 6333:6333 -p 6334:6334 qdrant/qdrant
  1. Or download from Qdrant's website

Option 2: Qdrant Cloud

  1. Create an account at Qdrant Cloud
  2. Create a new cluster
  3. Get your cluster URL and API key from the dashboard
  4. Use these in your configuration (see Configuration section below)

Configuration

The server can be used with both Cline and Claude Desktop. Configuration differs slightly between them:

Cline Configuration

Add to your Cline settings file (%AppData%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json):

  1. Using npm global install (recommended):
{
		"mcpServers": {
				"ragdocs": {
						"command": "node",
      "args": ["C:/Users/YOUR_USERNAME/AppData/Roaming/npm/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"],
      "env": {
        "QDRANT_URL": "http://127.0.0.1:6333",
        "EMBEDDING_PROVIDER": "ollama",
        "OLLAMA_URL": "http://localhost:11434"
      }
    }
  }
}

For OpenAI instead of Ollama:

{
		"mcpServers": {
				"ragdocs": {
						"command": "node",
      "args": ["C:/Users/YOUR_USERNAME/AppData/Roaming/npm/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"],
      "env": {
        "QDRANT_URL": "http://127.0.0.1:6333",
        "EMBEDDING_PROVIDER": "openai",
        "OPENAI_API_KEY": "your-openai-api-key"
      }
    }
  }
}
  1. Using local development setup:
{
		"mcpServers": {
				"ragdocs": {
						"command": "node",
						"args": ["PATH_TO_PROJECT/mcp-ragdocs/build/index.js"],
						"env": {
								"QDRANT_URL": "http://127.0.0.1:6333",
								"EMBEDDING_PROVIDER": "ollama",
								"OLLAMA_URL": "http://localhost:11434"
						}
				}
		}
}

Claude Desktop Configuration

Add to your Claude Desktop config file:

  1. Windows Setup with Ollama (using full paths):
{
  "mcpServers": {
    "ragdocs": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": [
        "C:\\Users\\YOUR_USERNAME\\AppData\\Roaming\\npm\\node_modules\\@qpd-v/mcp-server-ragdocs\\build\\index.js"
      ],
      "env": {
								"QDRANT_URL": "http://127.0.0.1:6333",
								"EMBEDDING_PROVIDER": "ollama",
								"OLLAMA_URL": "http://localhost:11434"
						}
				}
		}
}

Windows Setup with OpenAI:

{
		"mcpServers": {
				"ragdocs": {
						"command": "C:\\Program Files\\nodejs\\node.exe",
						"args": [
								"C:\\Users\\YOUR_USERNAME\\AppData\\Roaming\\npm\\node_modules\\@qpd-v/mcp-server-ragdocs\\build\\index.js"
						],
						"env": {
								"QDRANT_URL": "http://127.0.0.1:6333",
								"EMBEDDING_PROVIDER": "openai",
								"OPENAI_API_KEY": "your-openai-api-key"
						}
				}
		}
}
  1. macOS Setup with Ollama:
{
		"mcpServers": {
				"ragdocs": {
						"command": "/usr/local/bin/node",
						"args": [
								"/usr/local/lib/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"
						],
						"env": {
								"QDRANT_URL": "http://127.0.0.1:6333",
								"EMBEDDING_PROVIDER": "ollama",
								"OLLAMA_URL": "http://localhost:11434"
						}
				}
		}
}

Qdrant Cloud Configuration

For either Cline or Claude Desktop, when using Qdrant Cloud, modify the env section:

With Ollama:

{
		"env": {
				"QDRANT_URL": "https://your-cluster-url.qdrant.tech",
				"QDRANT_API_KEY": "your-qdrant-api-key",
				"EMBEDDING_PROVIDER": "ollama",
				"OLLAMA_URL": "http://localhost:11434"
		}
}

With OpenAI:

{
		"env": {
				"QDRANT_URL": "https://your-cluster-url.qdrant.tech",
				"QDRANT_API_KEY": "your-qdrant-api-key",
				"EMBEDDING_PROVIDER": "openai",
				"OPENAI_API_KEY": "your-openai-api-key"
		}
}

Environment Variables

Qdrant Configuration

Embeddings Configuration

Available Tools

  1. add_documentation

    • Add documentation from a URL to the RAG database
    • Parameters:
      • url: URL of the documentation to fetch
  2. search_documentation

    • Search through stored documentation
    • Parameters:
      • query: Search query
      • limit (optional): Maximum number of results to return (default: 5)
  3. list_sources

    • List all documentation sources currently stored
    • No parameters required

Example Usage

In Claude Desktop or any other MCP-compatible client:

  1. Add documentation:
Add this documentation: https://docs.example.com/api
  1. Search documentation:
Search the documentation for information about authentication
  1. List sources:
What documentation sources are available?

Development

  1. Clone the repository:
git clone https://github.com/qpd-v/mcp-server-ragdocs.git
cd mcp-server-ragdocs
  1. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Run locally:
npm start

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.