MCP Deep Web Research Server

Um servidor avançado de pesquisa na web com fila inteligente de buscas, extração aprimorada de conteúdo e capacidades de pesquisa aprofundada.

Documentação

MCP Deep Web Research Server (v0.3.0)

Node.js Version TypeScript License: MIT smithery badge

Um servidor Model Context Protocol (MCP) para pesquisa web avançada.

Últimas Alterações

  • Adicionada a ferramenta visit_page para extração direta de conteúdo de páginas web
  • Desempenho otimizado para funcionar dentro dos limites de timeout do MCP
    • Parâmetros padrão maxDepth e maxBranching reduzidos
    • Eficiência de carregamento de páginas melhorada
    • Verificações de timeout adicionadas em todo o processo
    • Tratamento de erros aprimorado para timeouts

Este projeto é um fork de mcp-webresearch por mzxrai, aprimorado com recursos adicionais para capacidades de pesquisa web profunda. Somos gratos aos criadores originais pelo seu trabalho fundamental.

Traga informações em tempo real para o Claude com fila de busca inteligente, extração de conteúdo aprimorada e capacidades de pesquisa profunda.

Recursos

  • Sistema de Fila de Busca Inteligente

    • Operações de busca em lote com limitação de taxa
    • Gerenciamento de fila com acompanhamento de progresso
    • Recuperação de erros e novas tentativas automáticas
    • Deduplicação de resultados de busca
  • Extração de Conteúdo Aprimorada

    • Pontuação de relevância baseada em TF-IDF
    • Análise de proximidade de palavras-chave
    • Ponderação de seções de conteúdo
    • Pontuação de legibilidade
    • Análise de estrutura HTML melhorada
    • Extração de dados estruturados
    • Melhor limpeza e formatação de conteúdo
  • Recursos Principais

    • Integração com busca do Google
    • Extração de conteúdo de páginas web
    • Rastreamento de sessões de pesquisa
    • Conversão para Markdown com formatação melhorada

Pré-requisitos

Instalação

Instalação via Smithery

Para instalar o Deep Web Research Server para Claude Desktop automaticamente via Smithery:

npx -y @smithery/cli install @PedroDnT/mcp-deepwebresearch --client claude

Instalação 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

Instalação em Projeto Local

# Using npm
npm install mcp-deepwebresearch

# Using yarn
yarn add mcp-deepwebresearch

# Using pnpm
pnpm add mcp-deepwebresearch

Integração com Claude Desktop

Após instalar o pacote, adicione esta entrada ao seu claude_desktop_config.json:

Windows

{
  "mcpServers": {
    "deepwebresearch": {
      "command": "mcp-deepwebresearch",
      "args": []
    }
  }
}

Localização: %APPDATA%\Claude\claude_desktop_config.json

macOS

{
  "mcpServers": {
    "deepwebresearch": {
      "command": "mcp-deepwebresearch",
      "args": []
    }
  }
}

Localização: ~/Library/Application Support/Claude/claude_desktop_config.json

Esta configuração permite que o Claude Desktop inicie automaticamente o servidor MCP de pesquisa web quando necessário.

Configuração Inicial

Após a instalação, execute este comando para instalar as dependências de navegador necessárias:

npx playwright install chromium

Uso

Basta iniciar um chat com o Claude e enviar um prompt que se beneficie de pesquisa web. Se você quiser um prompt pré-construído personalizado para pesquisa web mais profunda, pode usar o prompt agentic-research que fornecemos através deste pacote. Acesse esse prompt no Claude Desktop clicando no ícone de clipe de papel no campo de entrada do chat e selecionando Choose an integration → deepwebresearch → agentic-research.

Ferramentas

  1. deep_research

    • Realiza pesquisa abrangente com análise de conteúdo
    • Argumentos:
      {
        topic: string;
        maxDepth?: number;      // default: 2
        maxBranching?: number;  // default: 3
        timeout?: number;       // default: 55000 (55 seconds)
        minRelevanceScore?: number;  // default: 0.7
      }
      
    • Retorna:
      {
        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;
          };
        };
      }
      
  2. parallel_search

    • Realiza múltiplas buscas no Google em paralelo com fila inteligente
    • Argumentos: { queries: string[], maxParallel?: number }
    • Nota: maxParallel é limitado a 5 para garantir desempenho confiável
  3. visit_page

    • Visite uma página web e extraia seu conteúdo
    • Argumentos: { url: string }
    • Retorna:
      {
        url: string;
        title: string;
        content: string;  // Markdown formatted content
      }
      

Prompts

agentic-research

Um prompt de pesquisa guiada que ajuda o Claude a conduzir pesquisas web completas. O prompt instrui o Claude a:

  • Começar com buscas amplas para entender o panorama do tópico
  • Priorizar fontes de alta qualidade e autoridade
  • Refinar iterativamente a direção da pesquisa com base nos resultados
  • Manter você informado e permitir que você guie a pesquisa interativamente
  • Sempre citar fontes com URLs

Opções de Configuração

O servidor pode ser configurado através de variáveis de ambiente:

  • MAX_PARALLEL_SEARCHES: Número máximo de buscas simultâneas (padrão: 5)
  • SEARCH_DELAY_MS: Atraso entre buscas em milissegundos (padrão: 200)
  • MAX_RETRIES: Número de tentativas de repetição para solicitações com falha (padrão: 3)
  • TIMEOUT_MS: Timeout de solicitação em milissegundos (padrão: 55000)
  • LOG_LEVEL: Nível de registro (padrão: 'info')

Tratamento de Erros

Problemas Comuns

  1. Limitação de Taxa

    • Sintoma: erro "Too many requests"
    • Solução: Aumente SEARCH_DELAY_MS ou diminua MAX_PARALLEL_SEARCHES
  2. Timeouts de Rede

    • Sintoma: erro "Request timed out"
    • Solução: Garanta que as solicitações sejam concluídas dentro do timeout de 60 segundos do MCP
  3. Problemas de Navegador

    • Sintoma: erro "Browser failed to launch"
    • Solução: Garanta que o Playwright esteja instalado corretamente (npx playwright install)

Depuração

Este é um software beta. Se você encontrar problemas:

  1. Verifique os logs MCP do 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
    
  2. Ative o registro de depuração:

    export LOG_LEVEL=debug
    

Desenvolvimento

Configuração

# Install dependencies
pnpm install

# Build the project
pnpm build

# Watch for changes
pnpm watch

# Run in development mode
pnpm dev

Testes

# Run all tests
pnpm test

# Run tests in watch mode
pnpm test:watch

# Run tests with coverage
pnpm test:coverage

Qualidade de Código

# Run linter
pnpm lint

# Fix linting issues
pnpm lint:fix

# Type check
pnpm type-check

Contribuição

  1. Faça um fork do repositório
  2. Crie sua branch de recurso (git checkout -b feature/amazing-feature)
  3. Faça commit das suas alterações (git commit -m 'Add some amazing feature')
  4. Envie para a branch (git push origin feature/amazing-feature)
  5. Abra um Pull Request

Padrões de Código

  • Siga as melhores práticas de TypeScript
  • Mantenha a cobertura de testes acima de 80%
  • Documente novos recursos e APIs
  • Atualize o CHANGELOG.md para alterações significativas
  • Siga o versionamento semântico

Considerações de Desempenho

  • Use operações em lote quando possível
  • Implemente tratamento de erros e novas tentativas adequados
  • Considere o uso de memória com grandes conjuntos de dados
  • Armazene resultados em cache quando apropriado
  • Use streaming para conteúdo grande

Requisitos

  • Node.js >= 18
  • Playwright (instalado automaticamente como dependência)

Plataformas Verificadas

  • macOS
  • Windows
  • Linux

Licença

MIT

Créditos

Este projeto se baseia no excelente trabalho de mcp-webresearch por mzxrai. O código original forneceu a base para nossos recursos e capacidades aprimorados.

Autor

qpd-v