mcp-server-qdrant
RAG Agéntico (Tavily + Context7 + Qdrant)
Qué hace
Una base de conocimiento que el agente construye por sí mismo — una de varias fuentes de ingeniería de contexto que un agente puede utilizar.
RAG — generación aumentada por recuperación — significa proporcionar al modelo documentos relevantes para fundamentar su respuesta. La configuración habitual carga documentos en un almacén de vectores de antemano. El RAG agéntico invierte esto: el agente construye la base de conocimiento por sí mismo, decidiendo qué vale la pena conservar y almacenándolo mientras trabaja.
Esto utiliza el servidor MCP oficial de Qdrant. Qdrant es una base de datos vectorial, y el servidor expone dos herramientas: una almacena un fragmento de texto, la otra encuentra el texto almacenado más relevante para una consulta. Se ejecuta completamente en local — QDRANT_LOCAL_PATH mantiene todo en disco sin necesidad de una base de datos separada, y embebe texto con un modelo local, por lo que no se necesita una clave API adicional.
El agente utiliza tres servidores MCP:
Servidor | Transporte | Propósito |
Tavily ( | stdio vía | Búsqueda web en vivo, filtrada a |
Context7 ( | HTTP transmisible | Documentación actual de librerías, frameworks, SDKs y APIs |
Qdrant ( | stdio vía | El almacén vectorial local que el agente escribe y lee |
El script ejecuta las dos mitades del RAG como dos agentes separados:
Almacenar — un agente con búsqueda Tavily, Context7 y Qdrant. Investiga lo último sobre Nvidia en la web, consulta la documentación actual del SDK de OpenAI Agents a través de Context7, y almacena los datos clave de ambos.
Recuperar — un segundo agente con solo Qdrant, sin búsqueda web ni Context7. Todo lo que diga, lo recuerda de lo que almacenó el primer agente.
Related MCP server: Qdrant MCP Server
Por qué Context7
Los datos de entrenamiento del modelo tienen un límite temporal, por lo que su memoria de una librería que cambia rápidamente está desactualizada e inventará con confianza APIs que ya no existen. Context7 es un servidor MCP alojado que indexa documentación de librerías y sirve la versión actual bajo demanda. Dos herramientas:
resolve-library-id— convierte un nombre de paquete o producto ("openai-agents","next.js") en un ID de librería de Context7.query-docs— obtiene documentación actualizada y ejemplos de código para esa librería, limitados a tu pregunta.
Las instrucciones del agente dirigen cualquier cosa relacionada con librerías a Context7 en lugar de a la memoria o a una búsqueda web general — primero resuelve el ID, luego consulta la documentación. Como es un endpoint HTTP simple, no hay nada que instalar; se conecta con MCPServerStreamableHttp en lugar de MCPServerStdio:
context7_params = {"url": "https://mcp.context7.com/mcp", "timeout": 60}
async with MCPServerStreamableHttp(params=context7_params, client_session_timeout_seconds=60) as docs_server:
...Hay dos tiempos de espera en juego y hacen cosas diferentes. timeout dentro de los parámetros es el tiempo de espera de la solicitud HTTP; client_session_timeout_seconds es el tiempo de espera de lectura de sesión MCP, y por defecto es de solo 5 segundos — lo suficientemente bajo como para que una consulta lenta de documentación falle, por lo que se eleva a 60 aquí.
Configuración
Node 22+ (Tavily se ejecuta vía
npx; Qdrant se ejecuta víauvx, queuvya proporciona; Context7 no necesita nada instalado):Windows (PowerShell):
winget install OpenJS.NodeJS.LTSMac:
brew install nodeLinux / cualquier otro: instala a través de tu gestor de paquetes o desde nodejs.org
Obtén una clave API gratuita de Tavily en tavily.com (1,000 búsquedas/mes, sin tarjeta de crédito; comienza con
tvly-).Opcional: obtén una clave API gratuita de Context7 en context7.com. Context7 funciona de forma anónima — la clave solo aumenta el límite de velocidad.
Copia
.env.examplea.envy completa:OPENAI_API_KEY=sk-... TAVILY_API_KEY=tvly-... CONTEXT7_API_KEY= # optional, leave blank to run anonymouslyInstala las dependencias:
uv syncEjecútalo:
uv run main.py
Notas
La primera ejecución se pausa una vez, a veces por un rato: la primera vez que se almacena o busca, se descarga el pequeño modelo de embebido local de Qdrant. Por eso el servidor Qdrant tiene un tiempo de espera de cliente de 120s en lugar de 60s.
El almacén vectorial se encuentra en
memory/qdrant/(colecciónknowledge), creado en relación con tu directorio de trabajo — ejecuta desde la carpeta del proyecto. Bórralo para empezar con una base de conocimiento vacía.Ejecuta el script de nuevo y el paso 1 añade a lo que ya está almacenado en lugar de reemplazarlo.
Si
CONTEXT7_API_KEYestá configurada, se envía como un encabezadoAuthorization: Bearer ...; si está ausente, el encabezado se omite por completo y el servidor se usa de forma anónima.El agente de recuperación se deja deliberadamente solo con Qdrant. Darle también Context7 difuminaría la demostración — ya no podrías saber si una respuesta provino de la base de conocimiento o de una consulta nueva de documentación.
Context7 es un servidor remoto, por lo que a diferencia de los otros dos, depende de la accesibilidad de red de
mcp.context7.comen lugar de un proceso local.Trazas en platform.openai.com/traces.
Windows, rutas con espacios: si
npxfalla al iniciar, usa{"command": "powershell", "args": ["/c", "npx", ...]}en su lugar.
This server cannot be deployed
Maintenance
Related MCP Connectors
Universal persistent memory and knowledge retrieval layer for AI agents and LLMs.
Ingest, manage, and retrieve documents for RAG-powered AI applications
Persistent memory for AI agents. Search and store durable facts, preferences and decisions.
Persistent memory for AI agents. Search, store, and recall across sessions.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides semantic memory capabilities using Qdrant vector database with configurable embedding providers, allowing storage and retrieval of information using vector similarity.2Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables semantic search and document management using a local Qdrant vector database with OpenAI embeddings. Supports natural language queries, metadata filtering, and collection management for AI-powered document retrieval.33 npm36MIT
- AlicenseNot gradedqualityDmaintenanceEnables storing and retrieving information using semantic search with Qdrant vector database. Acts as a memory layer for LLMs to persistently store and semantically search through information and metadata.Apache 2.0
- FlicenseNot gradedqualityDmaintenanceEnables interaction with Qdrant vector database for storing, searching, and managing vectors with automatic text embedding.1-