Skip to main content
Glama
it-beard

Tavily MCP Server

by it-beard

Servidor MCP de Tavily

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona funciones de búsqueda basadas en IA mediante la API de Tavily. Este servidor permite a los asistentes de IA realizar búsquedas web exhaustivas y recuperar información relevante y actualizada.

Características

  • Funcionalidad de búsqueda impulsada por IA

  • Soporte para profundidades de búsqueda básicas y avanzadas

  • Resultados de búsqueda enriquecidos que incluyen títulos, URL y fragmentos de contenido

  • Resúmenes de resultados de búsqueda generados por IA

  • Puntuación de resultados y seguimiento del tiempo de respuesta

  • Almacenamiento completo del historial de búsqueda con almacenamiento en caché

  • Recursos de MCP para un acceso flexible a los datos

Related MCP server: Tavily MCP Server

Prerrequisitos

  • Node.js (v16 o superior)

  • npm (Administrador de paquetes de Node)

  • Clave API de Tavily (Obtenga una en el sitio web de Tavily )

  • Un cliente MCP (por ejemplo, Cline, Claude Desktop o su propia implementación)

Instalación

  1. Clonar el repositorio:

git clone https://github.com/it-beard/tavily-server.git cd tavily-mcp-server
  1. Instalar dependencias:

npm install
  1. Construir el proyecto:

npm run build

Configuración

Este servidor se puede usar con cualquier cliente MCP. A continuación, se muestran las instrucciones de configuración para los clientes más comunes:

Configuración de Cline

Si está utilizando Cline (la extensión VSCode para Claude), cree o modifique el archivo de configuración MCP en:

  • macOS: ~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json

  • Windows: %APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json

  • Linux: ~/.config/Cursor/User/globalStorage/saoudrizwan.claude-dev\settings\cline_mcp_settings.json

Agregue la siguiente configuración (reemplace las rutas y la clave API con las suyas):

{ "mcpServers": { "tavily": { "command": "node", "args": ["/path/to/tavily-server/build/index.js"], "env": { "TAVILY_API_KEY": "your-api-key-here" } } } }

Configuración del escritorio de Claude

Si está utilizando la aplicación Claude Desktop, modifique el archivo de configuración en:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Ventanas: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

Utilice el mismo formato de configuración que se muestra arriba.

Otros clientes de MCP

Para otros clientes MCP, consulte su documentación para conocer la ubicación y el formato correctos del archivo de configuración. La configuración del servidor debe incluir:

  1. Comando para ejecutar el servidor (normalmente node )

  2. Ruta al archivo del servidor compilado

  3. Variables de entorno, incluida la clave API de Tavily

Uso

Herramientas

El servidor proporciona una única herramienta llamada search con los siguientes parámetros:

Parámetros requeridos

  • query (cadena): La consulta de búsqueda a ejecutar

Parámetros opcionales

  • search_depth (cadena): Puede ser "básico" (más rápido) o "avanzado" (más completo)

Ejemplo de uso

// Example using the MCP SDK const result = await mcpClient.callTool("tavily", "search", { query: "latest developments in artificial intelligence", search_depth: "basic" });

Recursos

El servidor proporciona recursos estáticos y dinámicos para un acceso flexible a los datos:

Recursos estáticos

  • tavily://last-search/result : Devuelve los resultados de la consulta de búsqueda más reciente

    • Persistido en el disco en el directorio de datos

    • Sobrevive a los reinicios del servidor

    • Devuelve un error "Aún no se ha realizado ninguna búsqueda" si no se ha realizado ninguna búsqueda

Recursos dinámicos (plantillas de recursos)

  • tavily://search/{query} : Accede a los resultados de búsqueda para cualquier consulta

    • Reemplace {consulta} con su término de búsqueda codificado en URL

    • Ejemplo: tavily://search/artificial%20intelligence

    • Devuelve resultados almacenados en caché si la consulta se realizó previamente

    • Realiza y almacena una nueva búsqueda si la consulta no se ha buscado antes

    • Devuelve el mismo formato que la herramienta de búsqueda pero a través de una interfaz de recursos

Los recursos en MCP proporcionan una forma alternativa de acceder a los datos en comparación con las herramientas:

  • Las herramientas sirven para ejecutar operaciones (como realizar una nueva búsqueda)

  • Los recursos sirven para acceder a los datos (como recuperar resultados de búsqueda existentes)

  • Los URI de recursos se pueden almacenar y acceder a ellos más tarde

  • Los recursos admiten patrones de acceso tanto estáticos (fijos) como dinámicos (con plantilla)

Formato de respuesta

interface SearchResponse { query: string; answer: string; results: Array<{ title: string; url: string; content: string; score: number; }>; response_time: number; }

Almacenamiento persistente

El servidor implementa un almacenamiento persistente integral para los resultados de búsqueda:

Ubicación de almacenamiento

  • Los datos se almacenan en el directorio data .

  • data/searches.json contiene todos los resultados de búsqueda históricos

  • Los datos persisten entre reinicios del servidor

  • El almacenamiento se inicializa automáticamente al iniciar el servidor

Características de almacenamiento

  • Almacena el historial de búsqueda completo

  • Almacena en caché todos los resultados de búsqueda para una recuperación rápida

  • Guardado automático de nuevos resultados de búsqueda

  • Persistencia basada en disco

  • Formato JSON para una fácil depuración

  • Manejo de errores en operaciones de almacenamiento

  • Creación automática de directorios

Comportamiento del almacenamiento en caché

  • Todos los resultados de búsqueda se almacenan en caché automáticamente

  • Las solicitudes posteriores para la misma consulta devuelven resultados almacenados en caché

  • El almacenamiento en caché mejora el tiempo de respuesta y reduce las llamadas API

  • La caché persiste entre reinicios del servidor

  • Se realiza un seguimiento de la última búsqueda para un acceso rápido

Desarrollo

Estructura del proyecto

tavily-server/ ├── src/ │ └── index.ts # Main server implementation ├── data/ # Persistent storage directory │ └── searches.json # Search history and cache storage ├── build/ # Compiled JavaScript files ├── package.json # Project dependencies and scripts └── tsconfig.json # TypeScript configuration

Scripts disponibles

  • npm run build : compila TypeScript y hace que la salida sea ejecutable

  • npm run start : Inicia el servidor MCP (después de la compilación)

  • npm run dev : ejecuta el servidor en modo de desarrollo

Manejo de errores

El servidor proporciona mensajes de error detallados para problemas comunes:

  • Clave API no válida

  • Errores de red

  • Parámetros de búsqueda no válidos

  • Limitación de velocidad de API

  • Recurso no encontrado

  • URI de recursos no válidos

  • Errores de lectura/escritura de almacenamiento

Contribuyendo

  1. Bifurcar el repositorio

  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )

  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )

  4. Empujar a la rama ( git push origin feature/amazing-feature )

  5. Abrir una solicitud de extracción

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Expresiones de gratitud

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/it-beard/tavily-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server