Qdrant
About
Implement semantic memory layer on top of the Qdrant vector search engine
Details
- Author
- qdrant
- Repository
- qdrant/mcp-server-qdrant
- GitHub stars
- 448
- Downloads
- 1
- License
- Apache License 2.0
- Categories
- Developer Tools, Database, Other, Knowledge Base, Search, AI
Jump to
- Semantic memory layer on top of Qdrant vector search.
- Store and retrieve information with optional metadata.
- Automatic collection creation if it does not exist.
- Configurable embedding model (FastEmbed models only).
- Works with any MCP-compatible client (Claude Desktop, Cursor, VS Code, etc.).
- Customizable tool descriptions via environment variables.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
QdrantCommand (node, npx, python, etc.)uvxArguments-
Argument 1
mcp-server-qdrant
Environment-
QDRANT_URL
https://xyz-example.eu-central.aws.cloud.qdrant.io:6333 -
QDRANT_API_KEY
your_api_key -
COLLECTION_NAME
your-collection-name -
EMBEDDING_MODEL
sentence-transformers/all-MiniLM-L6-v2
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Configuration is done via environment variables. The only command-line argument is --transport, used to select the transport protocol.
> [!NOTE]
> You cannot provide both QDRANT_URL and QDRANT_LOCAL_PATH at the same time.
| Name | Description | Default Value |
|--------------------------|---------------------------------------------------------------------|-------------------------------------------------------------------|
| QDRANT_URL | URL of the Qdrant server | None |
| QDRANT_API_KEY | API key for the Qdrant server | None |
| COLLECTION_NAME | Name of the default collection to use. | None |
| QDRANT_LOCAL_PATH | Path to the local Qdrant database (alternative to QDRANT_URL) | None |
| EMBEDDING_PROVIDER | Embedding provider to use (currently only "fastembed" is supported) | fastembed |
| EMBEDDING_MODEL | Name of the embedding model to use | sentence-transformers/all-MiniLM-L6-v2 |
| TOOL_STORE_DESCRIPTION | Custom description for the store tool | See default in settings.py |
| TOOL_FIND_DESCRIPTION | Custom description for the find tool | See default in settings.py |
| QDRANT_SEARCH_LIMIT | Maximum number of results to return from search | 10 |
| QDRANT_READ_ONLY | Enable read-only mode (disables qdrant-store tool) | false |
Since mcp-server-qdrant is based on FastMCP, it also supports all the FastMCP environment variables. The most
important ones are listed below:
| Environment Variable | Description | Default Value |
|--------------------------------------------|-----------------------------------------------------------------|---------------|
| FASTMCP_LOG_LEVEL | Set logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL) | INFO |
| FASTMCP_SERVER_DEBUG | Enable debug mode | false |
| FASTMCP_SERVER_HOST | Host address to bind the server to | 127.0.0.1 |
| FASTMCP_SERVER_PORT | Port to run the server on | 8000 |
| FASTMCP_SERVER_ON_DUPLICATE_RESOURCES | Behavior for duplicate resources (warn, error, replace, ignore) | warn |
| FASTMCP_SERVER_ON_DUPLICATE_TOOLS | Behavior for duplicate tools (warn, error, replace, ignore) | warn |
| FASTMCP_SERVER_ON_DUPLICATE_PROMPTS | Behavior for duplicate prompts (warn, error, replace, ignore) | warn |
| FASTMCP_SERVER_DEPENDENCIES | List of dependencies to install in the server environment | [] |
> [!NOTE]
> Server-specific settings use the FASTMCP_SERVER_ prefix. This may change in future versions.
To install Qdrant MCP Server for Claude Desktop automatically via Smithery:
npx @smithery/cli install mcp-server-qdrant --client claude
To use this server with the Claude Desktop app, add the following configuration to the "mcpServers" section of your
claude_desktop_config.json:
{
"qdrant": {
"command": "uvx",
"args": ["mcp-server-qdrant"],
"env": {
"QDRANT_URL": "https://xyz-example.eu-central.aws.cloud.qdrant.io:6333",
"QDRANT_API_KEY": "your_api_key",
"COLLECTION_NAME": "your-collection-name",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
}
}
}
For local Qdrant mode:
{
"qdrant": {
"command": "uvx",
"args": ["mcp-server-qdrant"],
"env": {
"QDRANT_LOCAL_PATH": "/path/to/qdrant/database",
"COLLECTION_NAME": "your-collection-name",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
}
}
}
This MCP server will automatically create a collection with the specified name if it doesn't exist.
By default, the server will use the sentence-transformers/all-MiniLM-L6-v2 embedding model to encode memories.
For the time being, only FastEmbed models are supported.
qdrant-store
Store some information in the Qdrant database. Parameters: information (string), metadata (JSON, optional), collection_name (string, required if no default collection name)
qdrant-find
Retrieve relevant information from the Qdrant database. Parameters: query (string), collection_name (string, required if no default collection name)
1. qdrant-store
- Store some information in the Qdrant database
- Input:
- information (string): Information to store
- metadata (JSON): Optional metadata to store
- collection_name (string): Name of the collection to store the information in. This field is required if there are no default collection name.
If there is a default collection name, this field is not enabled.
- Returns: Confirmation message
2. qdrant-find
- Retrieve relevant information from the Qdrant database
- Input:
- query (string): Query to use for searching
- collection_name (string): Name of the collection to store the information in. This field is required if there are no default collection name.
If there is a default collection name, this field is not enabled.
- Returns: Information stored in the Qdrant database as separate messages
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"qdrant": {
"env": {
"QDRANT_URL": "https://xyz-example.eu-central.aws.cloud.qdrant.io:6333",
"QDRANT_API_KEY": "your_api_key",
"COLLECTION_NAME": "your-collection-name",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
},
"args": [
"mcp-server-qdrant"
],
"command": "uvx"
}
}
}
Linux
{
"env": {
"QDRANT_URL": "https://xyz-example.eu-central.aws.cloud.qdrant.io:6333",
"QDRANT_API_KEY": "your_api_key",
"COLLECTION_NAME": "your-collection-name",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
},
"args": [
"mcp-server-qdrant"
],
"command": "uvx"
}
Macos
{
"env": {
"QDRANT_URL": "https://xyz-example.eu-central.aws.cloud.qdrant.io:6333",
"QDRANT_API_KEY": "your_api_key",
"COLLECTION_NAME": "your-collection-name",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
},
"args": [
"mcp-server-qdrant"
],
"command": "uvx"
}
Windows
{
"env": {
"QDRANT_URL": "https://xyz-example.eu-central.aws.cloud.qdrant.io:6333",
"QDRANT_API_KEY": "your_api_key",
"COLLECTION_NAME": "your-collection-name",
"EMBEDDING_MODEL": "sentence-transformers/all-MiniLM-L6-v2"
},
"args": [
"mcp-server-qdrant"
],
"command": "uvx"
}
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





