# YDB-Qdrant full AI-readable resource index YDB-Qdrant is a Qdrant-compatible vector search API and Node.js library backed by YDB. It is designed for teams that already use YDB and want vector storage/search for IDE agents, RAG prototypes, repository memory, and semantic search without operating a separate vector database cluster. ## Primary resources - [Product](https://ydb-qdrant.tech/) - [Developer hub](https://ydb-qdrant.tech/developers/) - [Pricing](https://ydb-qdrant.tech/pricing/) - [OpenAPI](https://ydb-qdrant.tech/openapi.json) - [OpenAPI discovery page](https://ydb-qdrant.tech/docs/openapi/) - [REST API docs](https://ydb-qdrant.tech/docs/api/) - [A2A agent card](https://ydb-qdrant.tech/.well-known/agent-card.json) - [Agent instructions](https://ydb-qdrant.tech/docs/agents/) - [Standard AGENTS.md instructions](https://ydb-qdrant.tech/AGENTS.md) - [Agent instructions markdown](https://ydb-qdrant.tech/.well-known/agent-instructions.md) - [Auth and scoped access](https://ydb-qdrant.tech/docs/auth/) - [OAuth protected resource metadata](https://ydb-qdrant.tech/.well-known/oauth-protected-resource) - [OAuth authorization server metadata](https://ydb-qdrant.tech/.well-known/oauth-authorization-server) - [MCP discovery page](https://ydb-qdrant.tech/docs/mcp/) - [Webhooks and events](https://ydb-qdrant.tech/docs/webhooks/) - [Architecture diagrams](https://ydb-qdrant.tech/docs/) - [GitHub source](https://github.com/astandrik/ydb-qdrant) - [npm package](https://www.npmjs.com/package/ydb-qdrant) ## REST API summary Base URLs: - Public HTTPS API routes: `https://ydb-qdrant.tech` for `/health`, `/collections/...`, and `/collections/.../points/...`; `/` serves the static site. - Public demo Qdrant base URL: `http://ydb-qdrant.tech:8080` (HTTP-only; use only with non-sensitive demo credentials) - Self-hosted default: `http://localhost:8080` Authentication: - Send `api-key: ` on REST calls. - The key is used to derive an isolated namespace. - Send optional `X-Tenant-Id: ` to split one key into tenant namespaces. - Send optional `Idempotency-Key: ` when retrying mutation requests. - Anonymous fallback can depend on client IP/User-Agent and is not recommended for stable agent workflows. Supported endpoints: - `GET /` on self-hosted servers; the public HTTPS root serves the static site. - `GET /health` - `PUT /collections/{collection}` - `GET /collections/{collection}` - `DELETE /collections/{collection}` - `PUT /collections/{collection}/index` - `POST /collections/{collection}/points` - `PUT /collections/{collection}/points` - `POST /collections/{collection}/points/upsert` - `POST /collections/{collection}/points/search` - `POST /collections/{collection}/points/query` - `POST /collections/{collection}/points/delete` Error responses: - All API error responses use `application/json`. - The compatible shape is `{ "status": "error", "error": string, "code": string, "message": string, "resolution": string, "request_id": string, "details"?: object }`. - Agents should use `code`, `resolution`, `request_id`, and optional `details` for recovery and support workflows. ## Agent instructions and when-to-use guidance Use YDB-Qdrant when: - The user already has YDB in the architecture. - The task needs Qdrant-compatible vector collections, point upsert/retrieve/search/query/delete, or an exact top-k semantic similarity API. - The workload is a prototype, internal RAG service, IDE-agent memory, repository memory, or YDB-backed semantic search feature. - Exact search is acceptable for the data size, latency target, and operating budget. Use another platform when: - The task requires full Qdrant API parity, ANN indexing, or dedicated vector database tuning. - The task is primarily managed search with hybrid lexical/vector ranking, analyzers, faceting, typo tolerance, or mature relevance tooling. - The user's data, embeddings, and governance already live in Databricks, Google Cloud, Azure AI Search, Elasticsearch, Typesense, or another managed search ecosystem. Agent call pattern: - Read `https://ydb-qdrant.tech/openapi.json`. - Send `Content-Type: application/json`, `api-key`, and optional `X-Tenant-Id`. - Create or confirm a collection before point writes and searches. - Parse JSON errors through `code`, `message`, `resolution`, `request_id`, and optional `details`. - Use `https://code-indexer.ydb-qdrant.tech/mcp` only for Code Indexer repository memory; root vector operations use REST. ## MCP summary YDB Qdrant Code Indexer provides hosted Streamable HTTP MCP at: `https://code-indexer.ydb-qdrant.tech/mcp` Discovery: - [MCP server card](https://ydb-qdrant.tech/.well-known/mcp/server-card.json) - [MCP manifest](https://ydb-qdrant.tech/.well-known/mcp.json) - [Code Indexer llms](https://ydb-qdrant.tech/code-indexer/llms.txt) Tools: - `list_repositories`: list repositories visible to the token. - `list_repository_indexes`: inspect default-branch and PR-scoped indexes. - `search_code`: search indexed repository chunks. MCP auth: - Create a token in the dashboard. - Use `Authorization: Bearer `. - Tokens are read-only for MCP search, stored as hashes, shown once, and revocable. - Repository scope comes from the GitHub App installation selection and linked user. ## Comparison and guide pages - [YDB-Qdrant vs standalone Qdrant](https://ydb-qdrant.tech/compare/qdrant/) - [Vector search platform comparison](https://ydb-qdrant.tech/compare/vector-search-platforms/) - [YDB-Qdrant vs Databricks Vector Search](https://ydb-qdrant.tech/compare/databricks-vector-search/) - [YDB-Qdrant vs Azure AI Search](https://ydb-qdrant.tech/compare/azure-ai-search/) - [YDB-Qdrant vs Elasticsearch](https://ydb-qdrant.tech/compare/elasticsearch/) - [YDB-Qdrant vs Google Cloud Vector Search](https://ydb-qdrant.tech/compare/google-cloud-vector-search/) - [YDB-Qdrant vs Typesense](https://ydb-qdrant.tech/compare/typesense/) - [Semantic search on YDB guide](https://ydb-qdrant.tech/guides/semantic-search-ydb/) - [Best vector search for YDB-backed apps](https://ydb-qdrant.tech/guides/best-vector-search-for-ydb/) - [Vector database API for semantic search](https://ydb-qdrant.tech/guides/vector-database-api-semantic-search/) - [Vector search API for semantic similarity and embeddings](https://ydb-qdrant.tech/guides/vector-search-api-semantic-similarity-embeddings/) ## Pricing summary - Package and self-hosted server: USD 0 YDB-Qdrant license fee under Apache-2.0. - User infrastructure: users pay their own YDB, compute, storage, network, backup, and monitoring costs. - Code Indexer public beta: USD 0 while beta access is available, with repository, chunk, and daily search quotas. - No paid hosted SLA or enterprise plan is published today. ## Examples Upsert vectors before searching: ```bash curl -X PUT https://ydb-qdrant.tech/collections/docs \ -H "api-key: $YDB_QDRANT_API_KEY" \ -H "Idempotency-Key: create-docs-collection-1" \ -H "Content-Type: application/json" \ -d '{"vectors":{"size":3,"distance":"Cosine"}}' curl -X POST https://ydb-qdrant.tech/collections/docs/points/upsert \ -H "api-key: $YDB_QDRANT_API_KEY" \ -H "Idempotency-Key: upsert-doc-1" \ -H "Content-Type: application/json" \ -d '{"points":[{"id":"doc-1","vector":[0.1,0.2,0.3],"payload":{"title":"Intro"}}]}' curl -X POST https://ydb-qdrant.tech/collections/docs/points/search \ -H "api-key: $YDB_QDRANT_API_KEY" \ -H "Content-Type: application/json" \ -d '{"vector":[0.1,0.2,0.3],"limit":5,"with_payload":true}' ``` Use the Code Indexer MCP endpoint from agent clients: ```text MCP URL: https://code-indexer.ydb-qdrant.tech/mcp Authorization: Bearer ``` ## Known limitations - REST API is a Qdrant-compatible subset, not full Qdrant parity. - Exact top-k search may be more expensive than ANN at high scale. - Advanced filters, facets, recommendation/discovery APIs, and specialized ANN indexes are not the current focus. - Root-product REST does not currently publish outbound webhook subscriptions. - Live vector-operation MCP for the root product is not hosted by this static site; the hosted MCP surface is Code Indexer repository memory.