Skip to main content
Glama
avaazquezz

io.github.avaazquezz/mcp-qdrant

by avaazquezz

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
QDRANT_URLNoThe URL of the Qdrant server. Required if not using QDRANT_LOCAL_PATH or QDRANT_MCP_BYO.
QDRANT_API_KEYNoOptional API key for authenticating to Qdrant.
QDRANT_MCP_BYONoSet to '1' to enable public bring-your-own-Qdrant mode. Mutually exclusive with QDRANT_URL and QDRANT_LOCAL_PATH.
QDRANT_LOCAL_PATHNoPath to a local Qdrant storage directory. Use exactly one of QDRANT_URL or QDRANT_LOCAL_PATH.
QDRANT_MCP_TOOLSETSNoComma-separated list of toolsets to enable. Defaults to 'core'. Available toolsets: core, search, payload, snapshots, observability.core
QDRANT_MCP_HTTP_HOSTNoHost interface for the streamable-http server. Example: '0.0.0.0'.
QDRANT_MCP_READ_ONLYNoSet to 'true' to enable read-only mode. Defaults to 'false'.false
QDRANT_MCP_TRANSPORTNoTransport mode. Defaults to 'stdio'. Use 'streamable-http' for remote deployment.stdio
QDRANT_MCP_SHARED_SECRETNoRequired when QDRANT_MCP_TRANSPORT is 'streamable-http' and QDRANT_MCP_BYO is not set.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
qdrant_health_checkA

Confirm the configured Qdrant instance is reachable and responding.

    Never raises to the caller: a health check that raises on the exact
    condition it exists to detect defeats its own purpose. Connection
    failures are logged and reported in the result's ok/error fields
    instead, so a client renders them without a tool-call error round-trip.
    
qdrant_collection_createA

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. sparse_vectors defines sparse (keyword-style) vectors at creation time. quantization_config (scalar/product/binary) and strict_mode_config apply to the whole collection.

    Fails with a clear error if a collection with this name already exists.

    Example (simple): {"collection_name": "docs", "vector_size": 4, "distance": "Cosine"}
    Example (hybrid): {"collection_name": "docs", "vectors": {
        "dense": {"size": 4, "distance": "Cosine"}
    }, "sparse_vectors": {"sparse": {}}}
    
qdrant_collection_listA

List every collection name in the configured Qdrant instance.

    Example: {}
    
qdrant_collection_infoA

Return full config and status of one collection.

    Fails with a clear error if the collection doesn't exist.

    Example: {"collection_name": "docs"}
    
qdrant_collection_updateA

Update optimizer/HNSW/collection/vector params on an existing collection.

    Only the fields you pass are changed; omitted ones keep their current
    value. `quantization_config="disabled"` turns quantization off.
    `vectors_config`/`sparse_vectors_config` only **adjust** named
    vectors that already exist (HNSW/quantization/index tuning) — they
    cannot add a new one; use `qdrant_collection_vector_create` for
    that, or this fails with Qdrant's own "Not existing vector name"
    error. Fails with a clear error if the collection doesn't exist.

    Example: {"collection_name": "docs", "optimizers_config": {"indexing_threshold": 10000}}
    
qdrant_collection_deleteA

Delete a collection and all its points; a no-op if it doesn't exist.

    Example: {"collection_name": "docs"}
    
qdrant_collection_existsA

Check whether a collection exists, without raising if it doesn't.

    Example: {"collection_name": "docs"}
    
qdrant_points_upsertA

Insert or replace points (id + vector + payload) in a collection.

    Fails with a clear error if the collection doesn't exist.

    Example: {"collection_name": "docs", "points": [
        {"id": 1, "vector": [0.1, 0.2, 0.3, 0.4], "payload": {"city": "ny"}}
    ]}
    
qdrant_points_getB

Retrieve points by id; unknown ids are simply omitted, not an error.

    Fails only if the collection itself doesn't exist.

    Example: {"collection_name": "docs", "ids": [1, 2]}
    
qdrant_points_deleteA

Delete points by id list or by payload filter — exactly one of the two.

    Deleting an id that doesn't exist is not an error (Qdrant treats it as
    a no-op); this only fails if the collection itself is missing, or if
    you provide zero or both selectors.

    Example (by id): {"collection_name": "docs", "ids": [1, 2]}
    Example (by filter): {"collection_name": "docs", "points_filter": {
        "must": [{"key": "city", "match": {"value": "ny"}}]
    }}
    
qdrant_points_scrollA

Page through all points in a collection, optionally filtered.

    Pass the returned `next_page_offset` as `offset` to fetch the next
    page; `null` means there are no more pages.

    Example: {"collection_name": "docs", "limit": 50}
    
qdrant_points_countB

Count points in a collection, optionally matching a filter.

    Example: {"collection_name": "docs"}
    
qdrant_queryA

Vector similarity search, with optional hybrid search over multiple prefetch stages.

    Pass `query_vector` (a literal vector, or a point id to reuse an
    existing point's vector) for a plain nearest-vector query, or
    `fusion` + 2+ `prefetch` stages to combine multiple retrieval
    strategies via Reciprocal Rank Fusion (`fusion="rrf"`) or
    Distribution-Based Score Fusion (`fusion="dbsf"`) — exactly one of
    `query_vector`/`fusion` is required. `using` selects a named vector;
    `lookup_from` resolves `query_vector` from a point id in another
    collection instead of the current one. Fails with a clear error if
    the collection doesn't exist.

    Example (plain): {"collection_name": "docs", "query_vector": [0.1, 0.2, 0.3, 0.4],
        "limit": 5}
    Example (hybrid): {"collection_name": "docs", "fusion": "rrf", "prefetch": [
        {"query_vector": [0.1, 0.2, 0.3, 0.4], "using": "dense", "limit": 20},
        {"query_vector": [0.5, 0.5], "using": "sparse", "limit": 20}
    ], "limit": 5}
    

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/avaazquezz/Qdrant-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server