Description
### 1. Basic Configuration
This is a minimal, local Qdrant MCP server configuration using an API key from your environment.
```json
{
"qdrant": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qdrant"
],
"env": {
"QDRANT_URL": "http://localhost:6333",
"QDRANT_API_KEY": "${QDRANT_API_KEY}"
},
"disabled": false
}
}
```
**Explanation (not part of JSON):**
- `"qdrant"`: The MCP server name as it will appear in Claude Code.
- `"command": "npx"`: Uses `npx` to run the Qdrant MCP server package without a global install.
- `"args"`:
- `-y`: Auto‑confirm any prompts.
- `@modelcontextprotocol/server-qdrant`: The MCP Qdrant server package.
- `"env"`:
- `QDRANT_URL`: Points to a local Qdrant instance (default Docker port).
- `QDRANT_API_KEY`: Pulled from your shell environment; set it with `export QDRANT_API_KEY=...`.
- `"disabled": false`: Ensures the server is active.
---
### 2. Advanced Configuration
Adds explicit collection defaults and tuning parameters via environment variables, suitable for a more complete dev setup.
```json
{
"qdrant": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qdrant"
],
"env": {
"QDRANT_URL": "https://qdrant.dev.internal:6333",
"QDRANT_API_KEY": "${QDRANT_API_KEY}",
"QDRANT_COLLECTION": "claude_context",
"QDRANT_VECTOR_SIZE": "1536",
"QDRANT_DISTANCE": "Cosine",
"QDRANT_TIMEOUT_MS": "10000",
"QDRANT_BATCH_SIZE": "128",
"QDRANT_TLS_INSECURE": "false"
},
"disabled": false
}
}
```
**Explanation (not part of JSON):**
- `"QDRANT_URL"`: Points to a remote/dev Qdrant instance (e.g., in a cluster or remote VM).
- `"QDRANT_COLLECTION"`: Default collection name for all operations (created if missing by the server, depending on implementation).
- `"QDRANT_VECTOR_SIZE"`: Dimensionality of vectors (e.g., 1536 for many OpenAI-like embeddings).
- `"QDRANT_DISTANCE"`: Similarity metric (`Cosine`, `Dot`, or `Euclid` depending on your Qdrant setup).
- `"QDRANT_TIMEOUT_MS"`: HTTP timeout for Qdrant requests in milliseconds.
- `"QDRANT_BATCH_SIZE"`: How many points to upsert per batch; tune for throughput vs. memory.
- `"QDRANT_TLS_INSECURE"`: When `false`, TLS certificates must be valid; set to `true` only for testing self‑signed certs.
---
### 3. Use Case Specific Configuration
**Use case: Production semantic search over documentation with separate collections per environment**
This configuration assumes:
- A managed Qdrant Cloud instance.
- Separate collections for `prod` and `staging`.
- Stronger timeouts and a read‑only default mode for safety in production.
```json
{
"qdrant": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-qdrant"
],
"env": {
"QDRANT_URL": "https://your-cluster-1234.us-east-1-0.aws.cloud.qdrant.io",
"QDRANT_API_KEY": "${QDRANT_API_KEY}",
"QDRANT_COLLECTION": "docs_prod",
"QDRANT_VECTOR_SIZE": "3072",
"QDRANT_DISTANCE": "Cosine",
"QDRANT_TIMEOUT_MS": "20000",
"QDRANT_BATCH_SIZE": "256",
"QDRANT_TLS_INSECURE": "false",
"QDRANT_ENV": "production",
"QDRANT_READ_ONLY": "true",
"QDRANT_ALT_COLLECTION_STAGING": "docs_staging"
},
"disabled": false
}
}
```
**Explanation (not part of JSON):**
- `"QDRANT_URL"`: Managed Qdrant Cloud endpoint for production.
- `"QDRANT_COLLECTION": "docs_prod"`: Main collection for production docs semantic search.
- `"QDRANT_ALT_COLLECTION_STAGING"`: Optional second collection name for staging docs; the MCP server can expose tools to switch or query both.
- `"QDRANT_VECTOR_SIZE": "3072"`: Larger vectors (e.g., from higher‑capacity embedding models).
- `"QDRANT_TIMEOUT_MS": "20000"` and `"QDRANT_BATCH_SIZE": "256"`: Tuned for higher latency networks and bulk indexing.
- `"QDRANT_ENV": "production"`: Lets the MCP server adjust behavior (logging, safety checks, etc.).
- `"QDRANT_READ_ONLY": "true"`: Encourages the server to expose only read/query operations to Claude by default, reducing the risk of accidental destructive changes in production.