mcp-qdrant
Qdrant MCP server
claude mcp add --transport stdio rggh-mcp-qdrant cargo run --release \ --env HOST="127.0.0.1" \ --env PORT="8766" \ --env RUST_LOG="info,mcp_qdrant=debug" \ --env QDRANT_URL="http://localhost:6334" \ --env EMBEDDING_MODEL="BAAI/bge-base-en-v1.5" \ --env QDRANT_COLLECTION="qc1"
How to use
This MCP server powers semantic search against a Qdrant vector store. It exposes MCP-compatible endpoints so clients like Claude or any MCP client can issue semantic search requests over HTTP and receive contextually relevant results from your Qdrant collection. The server uses FastEmbed-powered embeddings to transform natural language queries into vector Space, enabling semantic matching with your stored documents. To use it, start the Rust-based server (cargo run --release) with a running Qdrant instance and a configured .env. Then connect via the MCP endpoint at http://127.0.0.1:8766/mcp and invoke the available tools. Tools include search_text for natural language queries, filter_search for metadata-filtered results, keyword_search for keyword-constrained results, and utility tools like scroll_points, count_points, search_vectors, and get_collection_info. You can also query the qdrant://collection resource to inspect the connected collection and use prompts like vector_search_assistant for guidance on usage.
How to install
Prerequisites:
- Rust toolchain installed (Rust 1.75 or newer)
- Qdrant instance (local or remote) running
- Basic familiarity with vector databases and MCP workflow
-
Clone the repository: git clone <repository-url> cd qdrant-mcp-server
-
Build the server in release mode: cargo build --release
-
Run the server (with a running Qdrant instance): cargo run --release
-
Ensure a .env file is created on first run and customize it as needed:
- QDRANT_URL=http://localhost:6334
- QDRANT_COLLECTION=qc1
- EMBEDDING_MODEL=BAAI/bge-base-en-v1.5
- HOST=127.0.0.1 (or 0.0.0.0 for remote access)
- PORT=8766
- RUST_LOG=info,mcp_qdrant=debug
-
Optional: start Qdrant via Docker if not running locally: docker run -p 6334:6334 qdrant/qdrant
-
Access MCP endpoint: http://127.0.0.1:8766/mcp
Additional notes
Tips and common issues:
- If you encounter connection errors, ensure .env exists in the project root and is loaded by the process (source .env or dotenv integration in your runtime).
- Ensure Qdrant is running and reachable at the URL configured in QDRANT_URL. The default is http://localhost:6334.
- When deploying in Docker, HOST should be set to 0.0.0.0 to listen on all interfaces. Consider network security and authentication when exposing the endpoint publicly.
- The embedding model is sourced from FastEmbed; verify EMBEDDING_MODEL matches the model used earlier for embedding to avoid inconsistencies.
- Review MCP tooling availability and endpoints in the server logs to confirm which tools are active and how to invoke them.
Related MCP Servers
ida -rs
Headless IDA Pro MCP Server
mcp-discovery
A command-line tool written in Rust for discovering and documenting MCP Server capabilities.
Archive-Agent
Find your files with natural language and ask questions.
turbovault
MCP server that transforms your Obsidian vault into an intelligent knowledge system
spec-kit
MCP server enabling AI assistants to use GitHub's spec-kit methodology
mcp-loxone
An opinionated Model Context Protocol (MCP) server for controlling Loxone home automation systems.