Server facts
Qdrant MCP Server
Project
- Author
- qdrant
- Repository
- github.com/qdrant/mcp-server-qdrant/
- License
- Apache-2.0 license
- Category
- Memory & Knowledge
Tech
- Runtime / language
- pythonPython
- Transports
- stdio
- Remote available
- No
- Authentication
- Not specified
Activity
- GitHub stars
- 637
- Last commit
- Data as of
Tags
- Fastembed
- Qdrant
- Semantic Memory
- Vector Search
Overview
Qdrant MCP Server provides a focused memory interface over the Qdrant vector engine. The official implementation exposes two core operations: storing information with optional JSON metadata and finding material relevant to a query. A configured default collection keeps calls simple; without one, callers supply the collection name. The server creates the selected collection if it is missing. This makes the interface suitable for retained facts and reusable knowledge rather than a broad administrative console for the database.
Configuration comes from environment variables. Users choose either a Qdrant server URL or a local database path, but cannot set both. FastEmbed is the supported embedding provider, with sentence-transformers/all-MiniLM-L6-v2 documented as the default model. Tool descriptions are customizable, and the README shows how to adapt them for code-snippet storage: describe the snippet in the information field and place its code in metadata. Examples cover Claude Desktop, Cursor, Windsurf, VS Code, and Claude Code. The uvx launch defaults to stdio, while SSE and streamable HTTP are also documented for remote clients. FastMCP settings control host, port, logging, and related behavior. Although general configuration uses environment variables rather than CLI arguments, the README specifically retains a transport flag. Adoption therefore centers on a small semantic store-and-retrieve workflow with configurable deployment and model choices within FastEmbed.
Install & configure
Requirements
- uv / uvx
- A Qdrant server or a configured local Qdrant database path
uvx mcp-server-qdrantstdio is the default. For local mode, replace QDRANT_URL with QDRANT_LOCAL_PATH. The README also documents --transport sse and --transport streamable-http; database and model settings use environment variables.
Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"mcp-server-qdrant": {
"command": "uvx",
"args": [
"mcp-server-qdrant"
],
"env": {
"QDRANT_URL": "<Qdrant server URL; omit when using a local path>",
"QDRANT_API_KEY": "<API key if required by the Qdrant server>",
"COLLECTION_NAME": "<Default memory collection>",
"EMBEDDING_MODEL": "<FastEmbed model; default sentence-transformers/all-MiniLM-L6-v2>"
}
}
}
}Config file · Project: .cursor/mcp.json
User: ~/.cursor/mcp.json
The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"mcp-server-qdrant": {
"command": "uvx",
"args": [
"mcp-server-qdrant"
],
"env": {
"QDRANT_URL": "<Qdrant server URL; omit when using a local path>",
"QDRANT_API_KEY": "<API key if required by the Qdrant server>",
"COLLECTION_NAME": "<Default memory collection>",
"EMBEDDING_MODEL": "<FastEmbed model; default sentence-transformers/all-MiniLM-L6-v2>"
}
}
}
}Config file · Workspace: .vscode/mcp.json
For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.
{
"servers": {
"mcp-server-qdrant": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-server-qdrant"
],
"env": {
"QDRANT_URL": "<Qdrant server URL; omit when using a local path>",
"QDRANT_API_KEY": "<API key if required by the Qdrant server>",
"COLLECTION_NAME": "<Default memory collection>",
"EMBEDDING_MODEL": "<FastEmbed model; default sentence-transformers/all-MiniLM-L6-v2>"
}
}
}
}Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json
Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"mcp-server-qdrant": {
"command": "uvx",
"args": [
"mcp-server-qdrant"
],
"env": {
"QDRANT_URL": "<Qdrant server URL; omit when using a local path>",
"QDRANT_API_KEY": "<API key if required by the Qdrant server>",
"COLLECTION_NAME": "<Default memory collection>",
"EMBEDDING_MODEL": "<FastEmbed model; default sentence-transformers/all-MiniLM-L6-v2>"
}
}
}
}Config file · Project scope: .mcp.json at the repository root
The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"mcp-server-qdrant": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-server-qdrant"
],
"env": {
"QDRANT_URL": "<Qdrant server URL; omit when using a local path>",
"QDRANT_API_KEY": "<API key if required by the Qdrant server>",
"COLLECTION_NAME": "<Default memory collection>",
"EMBEDDING_MODEL": "<FastEmbed model; default sentence-transformers/all-MiniLM-L6-v2>"
}
}
}
}Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Tools
Source: repository README. Tool descriptions are a documented snapshot, not a live capability check.
| Tool | What it does |
|---|---|
| qdrant-store | Save information with optional JSON metadata in a Qdrant collection. |
| qdrant-find | Retrieve stored information relevant to a semantic query. |
Names, permissions, and defaults can change. Check the current upstream documentation before granting access.
Use cases
- Store facts that an assistant can retrieve later.
- Find reusable code snippets from natural-language descriptions.
- Keep metadata alongside semantic memories.
- Share a remotely reachable memory server with an MCP workflow.
Strengths
- Small, explicit store-and-find tool surface.
- Supports local-path and server-backed Qdrant storage.
- Tool descriptions can be adapted to specialized workflows.
- Offers stdio, SSE, and streamable HTTP transports.
Limitations
- Only FastEmbed models are currently supported.
- A database URL and local path cannot be configured together.
- The documented tools focus on memory rather than database administration.
Frequently asked questions
Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.