Tavily Search
Búsqueda web optimizada para LLMs utilizando la API de Tavily Search.
Documentación
Servidor MCP de Tavily Search
Una implementación de servidor MCP que integra la API de Tavily Search, proporcionando capacidades de búsqueda optimizadas para LLMs.
Características
- Búsqueda web: Realiza búsquedas web optimizadas para LLMs, con control sobre la profundidad de búsqueda, el tema y el rango de tiempo.
- Extracción de contenido: Extrae el contenido más relevante de los resultados de búsqueda, optimizando la calidad y el tamaño.
- Características opcionales: Incluye imágenes, descripciones de imágenes, respuestas breves generadas por LLM y contenido HTML sin procesar.
- Filtrado de dominios: Incluye o excluye dominios específicos en los resultados de búsqueda.
Herramientas
- tavily_search
- Ejecuta búsquedas web utilizando la API de Tavily Search.
- Entradas:
query(string, obligatorio): La consulta de búsqueda.search_depth(string, opcional): "basic" o "advanced" (por defecto: "basic").topic(string, opcional): "general" o "news" (por defecto: "general").days(number, opcional): Número de días hacia atrás para la búsqueda de noticias (por defecto: 3).time_range(string, opcional): Filtro de rango de tiempo ("day", "week", "month", "year" o "d", "w", "m", "y").max_results(number, opcional): Número máximo de resultados (por defecto: 5).include_images(boolean, opcional): Incluir imágenes relacionadas (por defecto: false).include_image_descriptions(boolean, opcional): Incluir descripciones de las imágenes (por defecto: false).include_answer(boolean, opcional): Incluir una respuesta breve generada por LLM (por defecto: false).include_raw_content(boolean, opcional): Incluir contenido HTML sin procesar (por defecto: false).include_domains(string[], opcional): Dominios a incluir.exclude_domains(string[], opcional): Dominios a excluir.
Guía de configuración 🚀
1. Requisitos previos
- Claude Desktop instalado en tu computadora.
- Una clave de API de Tavily: a. Regístrate para obtener una cuenta de API de Tavily. b. Elige un plan (hay disponible un nivel gratuito). c. Genera tu clave de API desde el panel de control de Tavily.
2. Instalación
-
Clona este repositorio en algún lugar de tu computadora:
git clone https://github.com/apappascs/tavily-search-mcp-server.git -
Instala las dependencias y compila el proyecto:
cd tavily-search-mcp-servernpm installnpm run build
3. Integración con Claude Desktop
-
Abre tu archivo de configuración de Claude Desktop:
# On Mac: ~/Library/Application\ Support/Claude/claude_desktop_config.json # On Windows: %APPDATA%\Claude\claude_desktop_config.json -
Agrega una de las siguientes opciones al objeto
mcpServersen tu configuración, dependiendo de si deseas ejecutar el servidor usandonpmodocker:Opción A: Usando NPM (transporte stdio)
{ "mcpServers": { "tavily-search-server": { "command": "node", "args": [ "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/index.js" ], "env": { "TAVILY_API_KEY": "your_api_key_here" } } } }Opción B: Usando NPM (transporte SSE)
{ "mcpServers": { "tavily-search-server": { "command": "node", "args": [ "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server/dist/sse.js" ], "env": { "TAVILY_API_KEY": "your_api_key_here" }, "port": 3001 } } }Opción C: Usando Docker
{ "mcpServers": { "tavily-search-server": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "TAVILY_API_KEY", "-v", "/Users/<username>/<FULL_PATH...>/tavily-search-mcp-server:/app", "tavily-search-mcp-server" ], "env": { "TAVILY_API_KEY": "your_api_key_here" } } } } -
Pasos importantes:
- Reemplaza
/Users/<username>/<FULL_PATH...>/tavily-search-mcp-servercon la ruta completa real donde clonaste el repositorio. - Agrega tu clave de API de Tavily en la sección
env. Siempre es mejor tener secretos como claves de API como variables de entorno. - Asegúrate de usar barras diagonales (
/) en la ruta, incluso en Windows. - Si estás usando Docker, asegúrate de compilar la imagen primero usando
docker build -t tavily-search-mcp-server:latest .
- Reemplaza
-
Reinicia Claude Desktop para que los cambios surtan efecto.
Instalación mediante Smithery
Para instalar Tavily Search para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install @apappascs/tavily-search-mcp-server --client claude
Configuración del entorno (para npm)
-
Copia
.env.examplea.env:cp .env.example .env -
Actualiza el archivo
.envcon tu clave de API de Tavily real:TAVILY_API_KEY=your_api_key_hereNota: Nunca envíes tu clave de API real al control de versiones. El archivo
.envestá ignorado por git por razones de seguridad.
Ejecución con NPM
Inicia el servidor usando Node.js:
node dist/index.js
Para el transporte SSE:
node dist/sse.js
Ejecución con Docker
-
Compila la imagen de Docker (si aún no lo has hecho):
docker build -t tavily-search-mcp-server:latest . -
Ejecuta el contenedor de Docker con:
Para el transporte stdio:
docker run -it --rm -e TAVILY_API_KEY="your_api_key_here" tavily-search-mcp-server:latestPara el transporte SSE:
docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY="your_api_key_here" -e TRANSPORT="sse" tavily-search-mcp-server:latestTambién puedes aprovechar las variables de entorno de tu shell directamente, lo cual es una práctica más segura:
docker run -it --rm -p 3001:3001 -e TAVILY_API_KEY=$TAVILY_API_KEY -e TRANSPORT="sse" tavily-search-mcp-server:latestNota: El segundo comando demuestra el enfoque recomendado de usar
-e TAVILY_API_KEY=$TAVILY_API_KEYpara pasar el valor de tu variable de entornoTAVILY_API_KEYal contenedor de Docker. Esto mantiene tu clave de API fuera del historial de comandos, y generalmente se prefiere sobre codificar secretos directamente en los comandos. -
Usando docker compose
Ejecuta:
docker compose up -dPara detener el servidor:
docker compose down
Licencia
Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.