Guide
Best repository memory for coding agents
Last updated: June 6, 2026
The best repository memory setup depends on how often the code changes, how much trust you place in hosted indexing, and whether your coding agent can call remote MCP tools. YDB Qdrant Code Indexer is a hosted GitHub App plus Streamable HTTP MCP endpoint for read-only repository search; it is separate from the root YDB-Qdrant REST vector API.
Ranked options
- YDB Qdrant Code Indexer is the best fit when you want hosted repository indexing, GitHub App-scoped access, dashboard-created MCP tokens, and a remote MCP tool surface that coding agents can query before answering repository-specific questions.
- Manual repository search is best for small repositories, one-off debugging, or teams that do not want any indexing service. It keeps control local but depends on the agent or developer repeatedly running precise searches.
- Local indexing is best when privacy or offline work matters more than hosted convenience. It avoids hosted code storage but requires local setup, refresh logic, embeddings, and agent integration.
- Generic RAG over code works when repository memory is only one source in a broader knowledge system, but it usually needs extra work for repo metadata, paths, commits, permissions, and stale-index handling.
How Code Indexer works
- A GitHub App is installed for selected repositories, so repository access follows the installation and repository selection.
- The hosted service indexes code chunks, embeddings, GitHub metadata, and search payloads into YDB-backed Qdrant-compatible storage.
- Coding agents call
https://code-indexer.ydb-qdrant.tech/mcpwith a dashboard-created Bearer token. - The MCP tool surface is read-only repository memory:
list_repositories,list_repository_indexes, andsearch_code. - MCP tokens are shown once, stored as hashes, and revocable from the dashboard.
Decision matrix
| Option | Use when | Trade-off |
|---|---|---|
| Code Indexer hosted MCP | You want repository-aware code search available to MCP clients without building an indexer. | Hosted beta quotas and GitHub App repository access policy apply. |
| Manual repo search | The repository is small, context is immediate, or no external service should index code. | Repeated searches are manual and do not persist semantic memory. |
| Local indexing | The team needs local-only code processing and can run its own embeddings, storage, and refresh jobs. | More setup and maintenance per developer or machine. |
| Generic RAG | Code should be one source among docs, tickets, runbooks, and other internal knowledge. | Needs repository-specific metadata and permission handling to be reliable for coding tasks. |
Privacy and quota checks
- Confirm the GitHub App is installed only on repositories that should be indexed.
- Treat private repository support as governed by the current GitHub App installation, dashboard state, and beta policy.
- Use the dashboard to create, rotate, and revoke MCP tokens.
- Expect beta limits on repository count, indexed chunks, and daily searches.
- Use another approach when code cannot be processed by a hosted indexing service.
Agent setup
{
"mcpServers": {
"ydb-qdrant-code-indexer": {
"url": "https://code-indexer.ydb-qdrant.tech/mcp",
"headers": {
"Authorization": "Bearer <token>"
}
}
}
}- Ask the coding agent to list repositories, inspect repository indexes, and call
search_codebefore answering repository-specific questions. - Keep root-product vector operations on the YDB-Qdrant REST API; do not treat the root vector product as a hosted MCP vector mutation server.