# Qdrant MCP [Health: Active]

**Category:** 🗄️ Databases  
**Repository:** https://github.com/avaazquezz/Qdrant-MCP  
**GitHub Stars:** 2  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/qdrant-mcp

## Description
MCP server that wraps the Qdrant vector database API as tools.

## Tools
Capabilities this server exposes over MCP:

- **qdrant_health_check** — Confirm the configured Qdrant instance is reachable and responding.
- **qdrant_collection_create** — Create a collection: either a single unnamed vector (`vector_size` + `distance`), or one or more named vectors (`vectors`, each a full `VectorParams` — size, distance, and optionally its own `multivector_config` for ColBERT-style multi-vectors or `quantization_config`) — exactly one of the two.
- **qdrant_collection_list** — List every collection name in the configured Qdrant instance.
- **qdrant_collection_info** — Return full config and status of one collection.
- **qdrant_collection_update** — Update optimizer/HNSW/collection/vector params on an existing collection.
- **qdrant_collection_delete** — Delete a collection and all its points; a no-op if it doesn't exist.
- **qdrant_collection_exists** — Check whether a collection exists, without raising if it doesn't.
- **qdrant_points_upsert** — Insert or replace points (id + vector + payload) in a collection.
- **qdrant_points_get** — Retrieve points by id; unknown ids are simply omitted, not an error.
- **qdrant_points_delete** — Delete points by id list or by payload filter — exactly one of the two.
- **qdrant_points_scroll** — Page through all points in a collection, optionally filtered.
- **qdrant_points_count** — Count points in a collection, optionally matching a filter.
- **qdrant_query** — Search a collection with Qdrant's unified Query API: vector similarity, hybrid fusion, multi-stage reranking, MMR diversity, payload-based score formulas, ordering by a payload field, or random sampling.
- **qdrant_query_batch** — Run multiple independent queries against one collection in a single round trip — each item takes every query mode and tuning parameter of `qdrant_query` (plain vector, fusion over prefetch, MMR, formula, order_by, sample, search_params, score_threshold, offset); `timeout_seconds` and `consistency`…
- **qdrant_query_groups** — Vector query grouped by a payload field, up to `group_size` hits per group — e.g. the best-matching chunks per source document.
- **qdrant_recommend** — Find points similar to a set of positive examples and dissimilar to a set of negative ones (vectors or point ids) — Qdrant's recommendation API.
- **qdrant_recommend_batch** — Run multiple independent recommend queries against one collection in a single round trip.
- **qdrant_recommend_groups** — Recommend query grouped by a payload field, up to `group_size` hits per group.
- **qdrant_discover** — Rank points by how well they fit a target within positive/negative context pairs (vectors or point ids) — Qdrant's discovery search, a finer-grained alternative to recommend.
- **qdrant_discover_batch** — Run multiple independent discover queries against one collection in a single round trip.
- **qdrant_distance_matrix_pairs** — Pairwise distance matrix between a random sample of points: for each of `sample` points, its `limit` closest neighbors among that same sample — returned as a flat list of (a, b, score) pairs.
- **qdrant_distance_matrix_offsets** — Same distance matrix as `qdrant_distance_matrix_pairs`, in a column-oriented shape (offsets into a shared id list + a parallel score array) — more compact for large samples.
- **qdrant_payload_set** — Merge fields into the payload of selected points — exactly one of `ids`/`points_filter`.
- **qdrant_payload_overwrite** — Replace the entire payload of selected points with `payload` — exactly one of `ids`/`points_filter`.
- **qdrant_payload_delete** — Delete specific payload keys from selected points — exactly one of `ids`/`points_filter`.
- **qdrant_payload_clear** — Wipe the entire payload of selected points, keeping their vectors — exactly one of `ids`/`points_filter`.
- **qdrant_payload_facet** — Count distinct values of a payload field across the collection (or a filtered subset) — e.g. how many points per `city`.
- **qdrant_payload_index_create** — Create a payload index on `field_name`, speeding up filters that use it.
- **qdrant_payload_index_delete** — Delete the payload index on `field_name`.
- **qdrant_collection_vector_create** — Add a new named vector (dense or sparse) to a collection that already has points, without touching them.
- **qdrant_collection_vector_delete** — Remove a named vector (dense or sparse) from a collection — points keep their other vectors and payload.
- **qdrant_points_batch_update** — Run multiple point operations (upsert, delete, set/overwrite/delete/clear payload, update/delete vectors) against one collection, in the order given, in a single request.
- **qdrant_vectors_update** — Replace the vector(s) of existing points by id — leaves their payload untouched.
- **qdrant_vectors_delete** — Remove specific named vectors from selected points, keeping their payload and other vectors — exactly one of `ids`/`points_filter`.
- **qdrant_alias_list** — List every alias on the server with the collection it points to.
- **qdrant_collection_aliases** — List the aliases that point to one collection (an empty list if it has none).
- **qdrant_alias_update** — Create, rename, re-point or delete aliases — the basis of a zero-downtime reindex: build the new collection, then switch the alias that clients use.
- **qdrant_collection_cluster_info** — Shard layout of a collection: how many shards it has and, for each local shard, its point count and replica state.
- **qdrant_collection_optimizations** — Progress of the background optimizer for a collection — answers "has it finished indexing?" and "why isn't the collection green?".
- **qdrant_collection_copy** — Copy points (all vectors — dense, sparse and multivector — and payload) from one collection to another of the same Qdrant instance, entirely server-side: the vectors never pass through the model.
- **qdrant_payload_schema_infer** — Profile the payload keys that actually occur in a collection, so filters can be written against real keys instead of guessed ones.
- **qdrant_snapshot_create** — Create a snapshot of one collection's current state.
- **qdrant_snapshot_list** — List the snapshots stored for one collection.
- **qdrant_snapshot_delete** — Delete a collection snapshot, freeing its disk space on the server — does not touch the live collection.
- **qdrant_snapshot_recover** — Overwrite `collection_name` with the state captured in a snapshot — everything written since that snapshot is lost.
- **qdrant_snapshot_download** — Confirm a collection snapshot exists and return where to fetch it from — this tool does not transfer the (potentially huge) snapshot file itself; download it yourself (e.g. `curl`) from the returned `url`.
- **qdrant_storage_snapshot_create** — Create a snapshot of the whole storage (every collection and server config), not just one collection.
- **qdrant_storage_snapshot_list** — List the full-storage snapshots stored on the server.
- **qdrant_storage_snapshot_delete** — Delete a full-storage snapshot, freeing its disk space.
- **qdrant_storage_snapshot_download** — Confirm a full-storage snapshot exists and return where to fetch it from — same caveat as `qdrant_snapshot_download`: this tool does not transfer the file itself.
- **qdrant_telemetry** — Server-wide telemetry: build info, per-collection stats, request counters, memory and hardware usage.
- **qdrant_metrics_prometheus** — Return the URL where Qdrant serves Prometheus-format metrics — this tool does not fetch the metrics themselves (they're plain text, not JSON); point your Prometheus scraper at the returned `url` instead.
- **qdrant_quotas_get** — Current server-wide resource quotas (memory/disk limits) and actual usage.
- **qdrant_quotas_set** — Update server-wide resource quotas.
- **qdrant_issues_list** — List the issues Qdrant has detected about its own configuration (e.g. a heavily-filtered field with no payload index).
- **qdrant_issues_clear** — Clear all accumulated issues.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "qdrant-mcp": {
    "command": "uvx",
    "args": ["mcp-qdrant"],
    "env": {
      "QDRANT_URL": "",
      "QDRANT_MCP_TRANSPORT": "",
      "QDRANT_MCP_HTTP_HOST": "",
      "QDRANT_MCP_SHARED_SECRET": "",
      "QDRANT_MCP_TOOLSETS": "",
      "QDRANT_MCP_MAX_LIMIT": ""
    }
  }
}
```

**Requires environment variables:** `QDRANT_URL`, `QDRANT_MCP_TRANSPORT`, `QDRANT_MCP_HTTP_HOST`, `QDRANT_MCP_SHARED_SECRET`, `QDRANT_MCP_TOOLSETS`, `QDRANT_MCP_MAX_LIMIT` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What Qdrant MCP does

Qdrant MCP gives an MCP-compatible AI client direct access to selected Qdrant database operations. Its tools cover the collection lifecycle, point storage and retrieval, payload maintenance, payload indexes, named vector creation, health checks, and advanced search workflows.

The server expects the calling client to provide vectors when inserting or searching data. It does not create embeddings, split documents, or implement a retrieval-augmented generation pipeline. That makes it suitable for agents that already have an embedding workflow or need database administration rather than document ingestion.

## How it works

Each MCP tool maps to a Qdrant operation and calls the official `qdrant-client` SDK after validating its arguments. Results and Qdrant errors are returned through MCP. The server can run locally over stdio or expose a streamable HTTP endpoint for a network-accessible client.

Collection tools create, inspect, update, list, and delete collections. Point tools upsert, fetch, delete, scroll, and count records. Payload tools can merge, replace, remove, or clear fields, count distinct values, and manage payload indexes. Search tools support vector queries, hybrid fusion, prefetch-based multi-stage searches, MMR, score formulas, payload ordering, random sampling, grouped queries, recommendations, discovery, and distance matrices.

Queries and recommendations also have batch variants, allowing multiple independent operations against one collection in a single round trip. Filters can be used with scrolling, counting, deletion, and payload operations where supported by the tool.

## Setup and configuration

The package requires Python 3.12 or newer. Qdrant server 1.19.0 or newer is the tested target, although most operations can work with older Qdrant versions. Set `QDRANT_URL` to the Qdrant endpoint, then start the package with `uvx mcp-qdrant` or install it with `pip install mcp-qdrant`.

For a local stdio setup, point the server at Qdrant with a command such as:

```bash
QDRANT_URL=http://localhost:6333 mcp-qdrant
```

Docker deployments use streamable HTTP. Set `QDRANT_MCP_TRANSPORT=streamable-http`, bind the HTTP service with `QDRANT_MCP_HTTP_HOST=0.0.0.0` when it must be reachable outside the container, and provide `QDRANT_MCP_SHARED_SECRET`. The shared secret is required for streamable HTTP. Claude Desktop can also install the downloadable `.mcpb` bundle and configure the connection through its settings form.

## Tools and capabilities

- Check Qdrant health and list, inspect, create, update, or remove collections.
- Add, retrieve, scroll, count, or delete points using IDs and payload filters.
- Create collections with unnamed or named vectors, including dense, sparse, and multivector configurations where supported by the inputs.
- Run vector, hybrid, grouped, recommendation, discovery, batch, and distance-matrix searches.
- Edit payload fields, calculate facets, and create or remove payload indexes.
- Add a named vector to an existing collection without modifying its stored points.

The server also supports configurable toolsets and a read-only mode that removes mutating tools from the exposed registry.

_Full upstream README: https://allmcps.com/mcp/qdrant-mcp/readme_

