MCP Deep Web Research Server
Un servidor avanzado de investigación web con cola de búsqueda inteligente, extracción mejorada de contenido y capacidades de investigación profunda.
Documentación
MCP Deep Web Research Server (v0.3.0)
Un servidor de Model Context Protocol (MCP) para investigación web avanzada.
Cambios Recientes
- Añadida la herramienta visit_page para extracción directa de contenido de páginas web
- Rendimiento optimizado para funcionar dentro de los límites de tiempo de espera de MCP
- Reducidos los parámetros predeterminados maxDepth y maxBranching
- Mejorada la eficiencia de carga de páginas
- Añadidas comprobaciones de tiempo de espera en todo el proceso
- Mejorado el manejo de errores para tiempos de espera
Este proyecto es un fork de mcp-webresearch de mzxrai, mejorado con funcionalidades adicionales para capacidades de investigación web profunda. Agradecemos a los creadores originales su trabajo fundacional.
Lleva información en tiempo real a Claude con cola de búsqueda inteligente, extracción de contenido mejorada y capacidades de investigación profunda.
Características
-
Sistema de Cola de Búsqueda Inteligente
- Operaciones de búsqueda por lotes con limitación de velocidad
- Gestión de cola con seguimiento de progreso
- Recuperación de errores y reintentos automáticos
- Deduplicación de resultados de búsqueda
-
Extracción de Contenido Mejorada
- Puntuación de relevancia basada en TF-IDF
- Análisis de proximidad de palabras clave
- Ponderación de secciones de contenido
- Puntuación de legibilidad
- Análisis mejorado de estructura HTML
- Extracción de datos estructurados
- Mejor limpieza y formato de contenido
-
Características Principales
- Integración con Google Search
- Extracción de contenido de páginas web
- Seguimiento de sesiones de investigación
- Conversión a Markdown con formato mejorado
Requisitos Previos
- Node.js >= 18 (incluye
npmynpx) - Aplicación Claude Desktop
Instalación
Instalación mediante Smithery
Para instalar Deep Web Research Server para Claude Desktop automáticamente mediante Smithery:
npx -y @smithery/cli install @PedroDnT/mcp-deepwebresearch --client claude
Instalación Global (Recomendada)
# Install globally using npm
npm install -g mcp-deepwebresearch
# Or using yarn
yarn global add mcp-deepwebresearch
# Or using pnpm
pnpm add -g mcp-deepwebresearch
Instalación en Proyecto Local
# Using npm
npm install mcp-deepwebresearch
# Using yarn
yarn add mcp-deepwebresearch
# Using pnpm
pnpm add mcp-deepwebresearch
Integración con Claude Desktop
Después de instalar el paquete, añade esta entrada a tu claude_desktop_config.json:
Windows
{
"mcpServers": {
"deepwebresearch": {
"command": "mcp-deepwebresearch",
"args": []
}
}
}
Ubicación: %APPDATA%\Claude\claude_desktop_config.json
macOS
{
"mcpServers": {
"deepwebresearch": {
"command": "mcp-deepwebresearch",
"args": []
}
}
}
Ubicación: ~/Library/Application Support/Claude/claude_desktop_config.json
Esta configuración permite que Claude Desktop inicie automáticamente el servidor MCP de investigación web cuando sea necesario.
Configuración Inicial
Después de la instalación, ejecuta este comando para instalar las dependencias de navegador requeridas:
npx playwright install chromium
Uso
Simplemente inicia un chat con Claude y envía un mensaje que se beneficie de la investigación web. Si deseas un prompt predefinido personalizado para investigación web más profunda, puedes usar el prompt agentic-research que proporcionamos con este paquete. Accede a ese prompt en Claude Desktop haciendo clic en el icono de Clip en la entrada de chat y luego seleccionando Choose an integration → deepwebresearch → agentic-research.
Herramientas
-
deep_research- Realiza investigación exhaustiva con análisis de contenido
- Argumentos:
{ topic: string; maxDepth?: number; // default: 2 maxBranching?: number; // default: 3 timeout?: number; // default: 55000 (55 seconds) minRelevanceScore?: number; // default: 0.7 } - Devuelve:
{ findings: { mainTopics: Array<{name: string, importance: number}>; keyInsights: Array<{text: string, confidence: number}>; sources: Array<{url: string, credibilityScore: number}>; }; progress: { completedSteps: number; totalSteps: number; processedUrls: number; }; timing: { started: string; completed?: string; duration?: number; operations?: { parallelSearch?: number; deduplication?: number; topResultsProcessing?: number; remainingResultsProcessing?: number; total?: number; }; }; }
-
parallel_search- Realiza múltiples búsquedas de Google en paralelo con cola inteligente
- Argumentos:
{ queries: string[], maxParallel?: number } - Nota: maxParallel está limitado a 5 para garantizar un rendimiento fiable
-
visit_page- Visita una página web y extrae su contenido
- Argumentos:
{ url: string } - Devuelve:
{ url: string; title: string; content: string; // Markdown formatted content }
Prompts
agentic-research
Un prompt de investigación guiada que ayuda a Claude a realizar una investigación web exhaustiva. El prompt instruye a Claude para:
- Comenzar con búsquedas amplias para comprender el panorama del tema
- Priorizar fuentes de alta calidad y autoridad
- Refinar iterativamente la dirección de la investigación según los hallazgos
- Mantenerte informado y permitirte guiar la investigación de forma interactiva
- Citar siempre las fuentes con URLs
Opciones de Configuración
El servidor se puede configurar mediante variables de entorno:
MAX_PARALLEL_SEARCHES: Número máximo de búsquedas concurrentes (predeterminado: 5)SEARCH_DELAY_MS: Retraso entre búsquedas en milisegundos (predeterminado: 200)MAX_RETRIES: Número de intentos de reintento para solicitudes fallidas (predeterminado: 3)TIMEOUT_MS: Tiempo de espera de solicitud en milisegundos (predeterminado: 55000)LOG_LEVEL: Nivel de registro (predeterminado: 'info')
Manejo de Errores
Problemas Comunes
-
Limitación de Velocidad
- Síntoma: error "Too many requests"
- Solución: Aumenta
SEARCH_DELAY_MSo disminuyeMAX_PARALLEL_SEARCHES
-
Tiempos de Espera de Red
- Síntoma: error "Request timed out"
- Solución: Asegúrate de que las solicitudes se completen dentro del tiempo de espera de 60 segundos de MCP
-
Problemas de Navegador
- Síntoma: error "Browser failed to launch"
- Solución: Asegúrate de que Playwright esté instalado correctamente (
npx playwright install)
Depuración
Este es un software beta. Si encuentras problemas:
-
Revisa los registros MCP de Claude Desktop:
# On macOS tail -n 20 -f ~/Library/Logs/Claude/mcp*.log # On Windows Get-Content -Path "$env:APPDATA\Claude\logs\mcp*.log" -Tail 20 -Wait -
Habilita el registro de depuración:
export LOG_LEVEL=debug
Desarrollo
Configuración
# Install dependencies
pnpm install
# Build the project
pnpm build
# Watch for changes
pnpm watch
# Run in development mode
pnpm dev
Pruebas
# Run all tests
pnpm test
# Run tests in watch mode
pnpm test:watch
# Run tests with coverage
pnpm test:coverage
Calidad del Código
# Run linter
pnpm lint
# Fix linting issues
pnpm lint:fix
# Type check
pnpm type-check
Contribuciones
- Haz un fork del repositorio
- Crea tu rama de funcionalidad (
git checkout -b feature/amazing-feature) - Realiza tus cambios (
git commit -m 'Add some amazing feature') - Sube la rama (
git push origin feature/amazing-feature) - Abre una Pull Request
Estándares de Codificación
- Sigue las mejores prácticas de TypeScript
- Mantén la cobertura de pruebas por encima del 80%
- Documenta nuevas funcionalidades y APIs
- Actualiza CHANGELOG.md para cambios significativos
- Sigue el versionado semántico
Consideraciones de Rendimiento
- Usa operaciones por lotes cuando sea posible
- Implementa manejo de errores y reintentos adecuados
- Considera el uso de memoria con conjuntos de datos grandes
- Almacena resultados en caché cuando sea apropiado
- Usa streaming para contenido grande
Requisitos
- Node.js >= 18
- Playwright (instalado automáticamente como dependencia)
Plataformas Verificadas
- macOS
- Windows
- Linux
Licencia
MIT
Créditos
Este proyecto se basa en el excelente trabajo de mcp-webresearch de mzxrai. El código original proporcionó la base para nuestras funcionalidades y capacidades mejoradas.