Skip to main content
Glama

mcp-omnisearch

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso unificado a múltiples proveedores de búsqueda y herramientas de IA. Este servidor combina las capacidades de Tavily, Perplexity, Kagi, Jina AI, Brave y Firecrawl para ofrecer funciones integrales de búsqueda, respuestas de IA, procesamiento de contenido y mejora a través de una única interfaz.

Características

🔍 Herramientas de búsqueda

  • Búsqueda Tavily : Optimizada para obtener información objetiva con un sólido sistema de citas. Admite el filtrado de dominios mediante parámetros de la API (include_domains/exclude_domains).

  • Brave Search : Búsqueda centrada en la privacidad con una buena cobertura de contenido técnico. Ofrece compatibilidad nativa con operadores de búsqueda (site:, -site:, filetype:, intitle:, inurl:, before:, after: y frases exactas).

  • Kagi Search : Resultados de búsqueda de alta calidad con mínima influencia publicitaria, enfocados en fuentes confiables. Admite operadores de búsqueda en cadenas de consulta (site:, -site:, filetype:, intitle:, inurl:, before:, after: y frases exactas).

🎯 Operadores de búsqueda

MCP Omnisearch proporciona potentes capacidades de búsqueda a través de operadores y parámetros:

Funciones de búsqueda comunes

  • Filtrado de dominios: disponible en todos los proveedores

    • Tavily: A través de parámetros API (include_domains/exclude_domains)

    • Brave & Kagi: A través de los operadores site: y -site:

  • Filtrado de tipo de archivo: disponible en Brave y Kagi (tipo de archivo:)

  • Filtrado de títulos y URL: disponible en Brave y Kagi (intitle:, inurl:)

  • Filtrado de fechas: Disponible en Brave y Kagi (antes:, después:)

  • Coincidencia de frases exactas: Disponible en Brave y Kagi ("frase")

Ejemplo de uso

// Using Brave or Kagi with query string operators { "query": "filetype:pdf site:microsoft.com typescript guide" } // Using Tavily with API parameters { "query": "typescript guide", "include_domains": ["microsoft.com"], "exclude_domains": ["github.com"] }

Capacidades del proveedor

  • Brave Search : Compatibilidad total con operadores nativos en la cadena de consulta

  • Kagi Search : Soporte completo de operadores en la cadena de consulta

  • Tavily Search : Filtrado de dominios mediante parámetros API

🤖 Herramientas de respuesta de IA

  • Perplexity AI : Generación de respuestas avanzadas que combina la búsqueda web en tiempo real con GPT-4 Omni y Claude 3

  • Kagi FastGPT : Respuestas rápidas generadas por IA con citas (tiempo de respuesta típico: 900 ms)

📄 Herramientas de procesamiento de contenido

  • Jina AI Reader : Extracción de contenido limpio con subtítulos de imágenes y compatibilidad con PDF

  • Kagi Universal Summarizer : resumen de contenido para páginas, vídeos y podcasts

  • Tavily Extract : Extrae contenido sin procesar de una o varias páginas web con un nivel de extracción configurable (básico o avanzado). Devuelve contenido combinado y contenido de URL individuales, con metadatos que incluyen recuento de palabras y estadísticas de extracción.

  • Firecrawl Scrape : extrae datos limpios y listos para LLM de URL individuales con opciones de formato mejoradas

  • Firecrawl Crawl : rastreo profundo de todas las subpáginas accesibles en un sitio web con límites de profundidad configurables

  • Mapa de Firecrawl : recopilación rápida de URL de sitios web para un mapeo completo del sitio

  • Firecrawl Extract : Extracción de datos estructurados con IA mediante indicaciones en lenguaje natural

  • Acciones de Firecrawl : Compatibilidad con interacciones de página (clics, desplazamientos, etc.) antes de la extracción de contenido dinámico

🔄 Herramientas de mejora

  • API de enriquecimiento de Kagi : contenido complementario de índices especializados (Teclis, TinyGem)

  • Jina AI Grounding : Verificación de hechos en tiempo real con base en el conocimiento web

Related MCP server: MCP2Tavily

Requisitos de clave API flexibles

MCP Omnisearch está diseñado para funcionar con las claves API disponibles. No es necesario tener claves para todos los proveedores: el servidor detectará automáticamente las claves API disponibles y solo las habilitará.

Por ejemplo:

  • Si solo tiene una clave API de Tavily y Perplexity, solo esos proveedores estarán disponibles

  • Si no tiene una clave API de Kagi, los servicios basados en Kagi no estarán disponibles, pero todos los demás proveedores funcionarán normalmente.

  • El servidor registrará qué proveedores están disponibles según las claves API que haya configurado

Esta flexibilidad permite comenzar fácilmente con uno o dos proveedores y agregar más según sea necesario.

Configuración

Este servidor requiere configuración a través de su cliente MCP. A continuación, se muestran ejemplos para diferentes entornos:

Configuración de Cline

Agregue esto a su configuración de Cline MCP:

{ "mcpServers": { "mcp-omnisearch": { "command": "node", "args": ["/path/to/mcp-omnisearch/dist/index.js"], "env": { "TAVILY_API_KEY": "your-tavily-key", "PERPLEXITY_API_KEY": "your-perplexity-key", "KAGI_API_KEY": "your-kagi-key", "JINA_AI_API_KEY": "your-jina-key", "BRAVE_API_KEY": "your-brave-key", "FIRECRAWL_API_KEY": "your-firecrawl-key" }, "disabled": false, "autoApprove": [] } } }

Escritorio Claude con configuración WSL

Para entornos WSL, agregue esto a su configuración de Claude Desktop:

{ "mcpServers": { "mcp-omnisearch": { "command": "wsl.exe", "args": [ "bash", "-c", "TAVILY_API_KEY=key1 PERPLEXITY_API_KEY=key2 KAGI_API_KEY=key3 JINA_AI_API_KEY=key4 BRAVE_API_KEY=key5 FIRECRAWL_API_KEY=key6 node /path/to/mcp-omnisearch/dist/index.js" ] } } }

Variables de entorno

El servidor utiliza claves API para cada proveedor. No necesita claves para todos los proveedores ; solo se activarán los que correspondan a sus claves API disponibles.

  • TAVILY_API_KEY : Para la búsqueda de Tavily

  • PERPLEXITY_API_KEY : Para Perplexity AI

  • KAGI_API_KEY : Para servicios Kagi (FastGPT, Summarizer, Enriquecimiento)

  • JINA_AI_API_KEY : Para servicios de inteligencia artificial de Jina (Lector, Conexión a tierra)

  • BRAVE_API_KEY : Para Brave Search

  • FIRECRAWL_API_KEY : Para servicios de Firecrawl (Rastreo, Mapeo, Extracción, Acciones)

Puedes empezar con una o dos claves API y añadir más según sea necesario. El servidor registrará los proveedores disponibles al iniciar.

API

El servidor implementa herramientas MCP organizadas por categoría:

Herramientas de búsqueda

búsqueda_tavily

Busca en la web con la API de búsqueda de Tavily. Ideal para consultas basadas en hechos que requieren fuentes y citas fiables.

Parámetros:

  • query (cadena, obligatoria): consulta de búsqueda

Ejemplo:

{ "query": "latest developments in quantum computing" }

búsqueda_valiente

Búsqueda web centrada en la privacidad con buena cobertura de temas técnicos.

Parámetros:

  • query (cadena, obligatoria): Consulta de búsqueda

Ejemplo:

{ "query": "rust programming language features" }

búsqueda_kagi

Resultados de búsqueda de alta calidad con mínima influencia publicitaria. Ideal para encontrar fuentes confiables y materiales de investigación.

Parámetros:

  • query (cadena, obligatoria): Consulta de búsqueda

  • language (cadena, opcional): filtro de idioma (p. ej., "en")

  • no_cache (booleano, opcional): omite la caché para resultados nuevos

Ejemplo:

{ "query": "latest research in machine learning", "language": "en" }

Herramientas de respuesta de IA

ai_perplejidad

Generación de respuestas impulsada por IA con integración de búsqueda web en tiempo real.

Parámetros:

  • query (cadena, obligatoria): Pregunta o tema para la respuesta de IA

Ejemplo:

{ "query": "Explain the differences between REST and GraphQL" }

ai_kagi_fastgpt

Respuestas rápidas generadas por IA con citas.

Parámetros:

  • query (cadena, obligatoria): Pregunta para una respuesta rápida de IA

Ejemplo:

{ "query": "What are the main features of TypeScript?" }

Herramientas de procesamiento de contenido

lector de procesos de Jina

Convierta URL en texto limpio y compatible con LLM con subtítulos de imagen.

Parámetros:

  • url (cadena, obligatoria): URL a procesar

Ejemplo:

{ "url": "https://example.com/article" }

resumen_de_proceso_kagi

Resumir el contenido de las URL.

Parámetros:

  • url (cadena, obligatoria): URL para resumir

Ejemplo:

{ "url": "https://example.com/long-article" }

proceso_tavily_extracto

Extraiga contenido sin procesar de páginas web con Tavily Extract.

Parámetros:

  • url (cadena | cadena[], obligatorio): URL única o matriz de URL para extraer contenido

  • extract_depth (cadena, opcional): Profundidad de extracción: 'básica' (predeterminada) o 'avanzada'

Ejemplo:

{ "url": [ "https://example.com/article1", "https://example.com/article2" ], "extract_depth": "advanced" }

La respuesta incluye:

  • Contenido combinado de todas las URL

  • Contenido sin procesar individual para cada URL

  • Metadatos con recuento de palabras, extracciones exitosas y URL fallidas

proceso de raspado de firecrawl

Extraiga datos limpios y listos para LLM de URL individuales con opciones de formato mejoradas.

Parámetros:

  • url (cadena | cadena[], obligatorio): URL única o matriz de URL para extraer contenido

  • extract_depth (cadena, opcional): Profundidad de extracción: 'básica' (predeterminada) o 'avanzada'

Ejemplo:

{ "url": "https://example.com/article", "extract_depth": "basic" }

La respuesta incluye:

  • Contenido limpio y con formato Markdown

  • Metadatos que incluyen título, recuento de palabras y estadísticas de extracción

proceso de rastreo de fuego

Rastreo profundo de todas las subpáginas accesibles en un sitio web con límites de profundidad configurables.

Parámetros:

  • url (cadena | cadena[], obligatorio): URL de inicio para el rastreo

  • extract_depth (cadena, opcional): Profundidad de extracción: 'básica' (predeterminada) o 'avanzada' (controla la profundidad y los límites del rastreo)

Ejemplo:

{ "url": "https://example.com", "extract_depth": "advanced" }

La respuesta incluye:

  • Contenido combinado de todas las páginas rastreadas

  • Contenido individual para cada página

  • Metadatos que incluyen título, recuento de palabras y estadísticas de rastreo

proceso del mapa de rastreo de fuego

Recopilación rápida de URL de sitios web para un mapeo completo del sitio.

Parámetros:

  • url (cadena | cadena[], obligatorio): URL a mapear

  • extract_depth (cadena, opcional): Profundidad de extracción: 'básica' (predeterminada) o 'avanzada' (controla la profundidad del mapa)

Ejemplo:

{ "url": "https://example.com", "extract_depth": "basic" }

La respuesta incluye:

  • Lista de todas las URL descubiertas

  • Metadatos que incluyen el título del sitio y el número de URL

proceso de extracción de firecrawl

Extracción de datos estructurados con IA utilizando indicaciones en lenguaje natural.

Parámetros:

  • url (cadena | cadena[], obligatorio): URL de la que extraer datos estructurados

  • extract_depth (cadena, opcional): Profundidad de extracción: 'básica' (predeterminada) o 'avanzada'

Ejemplo:

{ "url": "https://example.com", "extract_depth": "basic" }

La respuesta incluye:

  • Datos estructurados extraídos de la página

  • Metadatos que incluyen título y estadísticas de extracción

proceso de acciones de firecrawl

Soporte para interacciones de página (clics, desplazamiento, etc.) antes de la extracción de contenido dinámico.

Parámetros:

  • url (cadena | cadena[], obligatorio): URL para interactuar y extraer contenido de ella

  • extract_depth (cadena, opcional): Profundidad de extracción: 'básica' (predeterminada) o 'avanzada' (controla la complejidad de las interacciones)

Ejemplo:

{ "url": "https://news.ycombinator.com", "extract_depth": "basic" }

La respuesta incluye:

  • Contenido extraído después de realizar interacciones

  • Descripción de las acciones realizadas

  • Captura de pantalla de la página (si está disponible)

  • Metadatos que incluyen título y estadísticas de extracción

Herramientas de mejora

mejorar_el_enriquecimiento_kagi

Obtenga contenido complementario de índices especializados.

Parámetros:

  • query (cadena, obligatoria): Consulta para enriquecimiento

Ejemplo:

{ "query": "emerging web technologies" }

mejorar_jina_grounding

Verificar las afirmaciones frente al conocimiento web.

Parámetros:

  • statement (cadena, obligatoria): Declaración a verificar

Ejemplo:

{ "statement": "TypeScript adds static typing to JavaScript" }

Desarrollo

Configuración

  1. Clonar el repositorio

  2. Instalar dependencias:

pnpm install
  1. Construir el proyecto:

pnpm run build
  1. Ejecutar en modo de desarrollo:

pnpm run dev

Publicación

  1. Actualizar la versión en package.json

  2. Construir el proyecto:

pnpm run build
  1. Publicar en npm:

pnpm publish

Solución de problemas

Claves API y acceso

Cada proveedor requiere su propia clave API y puede tener diferentes requisitos de acceso:

  • Tavily : Requiere una clave API de su portal para desarrolladores

  • Perplejidad : acceso a la API a través de su programa de desarrollador

  • Kagi : Algunas funciones están limitadas a los usuarios del plan Business (Team)

  • Jina AI : Se requiere una clave API para todos los servicios

  • Brave : clave API de su portal para desarrolladores

  • Firecrawl : Se requiere una clave API desde su portal para desarrolladores

Límites de velocidad

Cada proveedor tiene sus propios límites de velocidad. El servidor gestionará los errores de límite de velocidad correctamente y devolverá los mensajes de error correspondientes.

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Licencia MIT: consulte el archivo LICENCIA para obtener más detalles.

Expresiones de gratitud

Construido sobre:

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/spences10/mcp-omnisearch'

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