Saltar al contenido

CrawlForge TeamEquipo de Ingeniería

10 min de lecturaActualizado

Crea un agente de investigación con CrawlForge Deep Research

Un analista sénior dedica entre 4 y 6 horas a investigar una sola pregunta de mercado: consultar varias bases de datos, leer entre 20 y 30 artículos, cruzar datos y sintetizar los hallazgos en un informe coherente. La mayor parte de ese tiempo se va en trabajo mecánico -- encontrar fuentes en plataformas como arXiv o SEC EDGAR, extraer párrafos relevantes, comprobar contradicciones -- y no en el análisis en sí.

La herramienta deep_research de CrawlForge comprime todo este flujo de trabajo en una sola llamada a la API. Expande automáticamente tu consulta, busca en múltiples fuentes, verifica la credibilidad, detecta información contradictoria y produce un informe sintetizado con citas. Esta guía te muestra cómo construir un agente de investigación de producción en torno a ella.

Tabla de contenidos

Qué es la investigación profunda

¿Qué es la investigación profunda (deep research) en IA? La investigación profunda es un proceso automatizado de recopilación de información en varias etapas en el que un agente de IA consulta sistemáticamente múltiples fuentes, extrae hallazgos relevantes, cruza datos para garantizar la precisión, detecta contradicciones y sintetiza los resultados en un informe estructurado con citas de fuentes y puntuaciones de credibilidad.

A diferencia de una simple búsqueda web que devuelve 10 enlaces, deep_research funciona como un flujo de trabajo de investigación completo:

EtapaQué ocurrePor qué importa
Expansión de la consultaGenera sinónimos y consultas relacionadasCaptura resultados que una sola consulta pasaría por alto
Búsqueda multifuenteConsulta de 10 a 50 fuentes en paraleloAmplitud de cobertura
Extracción de contenidoExtrae los pasajes relevantes de cada fuenteProfundidad de la información
Verificación de fuentesPuntúa la credibilidad de cada fuenteControl de calidad
Detección de conflictosMarca la información contradictoriaPrecisión
SíntesisProduce un informe coherente con citasResultado accionable

¿Cómo funciona la investigación profunda? La herramienta toma un tema de investigación, genera automáticamente consultas de búsqueda expandidas, rastrea y analiza páginas de múltiples fuentes, puntúa la credibilidad de las fuentes, detecta afirmaciones contradictorias entre ellas y lo sintetiza todo en un informe estructurado. Todo el proceso se ejecuta en entre 30 y 120 segundos según el alcance.

Resumen de la arquitectura

Un agente de investigación combina deep_research con herramientas de apoyo:

ComponenteHerramientaCreditsPropósito
Investigación principaldeep_research10Investigación multifuente
Extracción de seguimientoextract_content2Profundizar en fuentes concretas
Análisis de documentosprocess_document3Analizar PDFs e informes citados
Generación de resúmenessummarize_content2Creación del resumen ejecutivo
Búsqueda complementariasearch_web5Consultas de seguimiento específicas

Paso 1: Configura el agente de investigación

Configura un agente de investigación con parámetros ajustables para distintos tipos de investigación.

Typescript
import { Client } from '@modelcontextprotocol/sdk/client/index.js';

const client = new Client({
  name: 'research-agent',
  version: '1.0.0',
});

interface ResearchConfig {
  topic: string;
  approach: 'broad' | 'focused' | 'academic' | 'current_events' | 'comparative';
  maxSources: number;
  maxDepth: number;
  credibilityThreshold: number;
  sourceTypes: Array<'academic' | 'news' | 'government' | 'commercial' | 'blog'>;
  timeLimit: number;
}

// Preset configurations for common research types
const RESEARCH_PRESETS: Record<string, Partial<ResearchConfig>> = {
  market: {
    approach: 'broad',
    maxSources: 30,
    maxDepth: 5,
    credibilityThreshold: 0.4,
    sourceTypes: ['news', 'commercial', 'blog'],
    timeLimit: 90000, // 90 seconds
  },
  technical: {
    approach: 'focused',
    maxSources: 20,
    maxDepth: 3,
    credibilityThreshold: 0.6,
    sourceTypes: ['academic', 'blog', 'commercial'],
    timeLimit: 60000,
  },
  competitive: {
    approach: 'comparative',
    maxSources: 25,
    maxDepth: 4,
    credibilityThreshold: 0.5,
    sourceTypes: ['commercial', 'news', 'blog'],
    timeLimit: 120000,
  },
  academic: {
    approach: 'academic',
    maxSources: 40,
    maxDepth: 5,
    credibilityThreshold: 0.7,
    sourceTypes: ['academic', 'government'],
    timeLimit: 120000,
  },
};

Paso 2: Ejecuta investigación multifuente

Ejecuta la investigación con deep_research y gestiona la salida estructurada.

Typescript
interface ResearchResult {
  synthesis: string;
  sources: Array<{
    url: string;
    title: string;
    credibilityScore: number;
    relevantFindings: string[];
  }>;
  conflicts: Array<{
    topic: string;
    positions: Array<{ source: string; claim: string }>;
  }>;
  confidence: number;
  queryExpansions: string[];
}

async function runResearch(config: ResearchConfig): Promise<ResearchResult> {
  const result = await client.callTool({
    name: 'deep_research',
    arguments: {
      topic: config.topic,
      maxDepth: config.maxDepth,
      maxUrls: config.maxSources,
      enableSourceVerification: true,
      enableConflictDetection: true,
      enableSynthesis: true,
      researchApproach: config.approach,
      credibilityThreshold: config.credibilityThreshold,
      sourceTypes: config.sourceTypes,
      timeLimit: config.timeLimit,
      outputFormat: 'comprehensive',
      queryExpansion: {
        enableSynonyms: true,
        enableContextual: true,
        maxVariations: 8,
      },
    },
  });

  return JSON.parse(result.content[0].text);
}

// Example: Research a market question
const marketResearch = await runResearch({
  topic: 'MCP server adoption trends in enterprise AI development 2026',
  ...RESEARCH_PRESETS.market,
} as ResearchConfig);

console.log(`Research complete: ${marketResearch.sources.length} sources analyzed`);
console.log(`Confidence level: ${marketResearch.confidence}`);
console.log(`Conflicts found: ${marketResearch.conflicts.length}`);

Paso 3: Procesa y valida los hallazgos

Para investigaciones críticas, profundiza en las fuentes clave y valida afirmaciones concretas.

Typescript
async function validateFindings(
  research: ResearchResult,
  topN: number = 5
): Promise<{
  validated: ResearchResult;
  additionalInsights: string[];
}> {
  const additionalInsights: string[] = [];

  // Get full content from top sources
  const topSources = research.sources
    .sort((a, b) => b.credibilityScore - a.credibilityScore)
    .slice(0, topN);

  for (const source of topSources) {
    // Extract full content for deeper analysis
    const fullContent = await client.callTool({
      name: 'extract_content',
      arguments: { url: source.url },
    });

    const content = JSON.parse(fullContent.content[0].text);

    // Check for PDF references in the source
    if (content.content.includes('.pdf')) {
      const pdfUrls = content.content.match(
        /https?:\/\/[^\s]+\.pdf/g
      ) || [];

      for (const pdfUrl of pdfUrls.slice(0, 2)) {
        try {
          const doc = await client.callTool({
            name: 'process_document',
            arguments: {
              source: pdfUrl,
              sourceType: 'pdf_url',
            },
          });

          const docResult = JSON.parse(doc.content[0].text);
          additionalInsights.push(
            `From ${pdfUrl}: ${docResult.summary || docResult.content?.slice(0, 200)}`
          );
        } catch {
          // PDF might be behind auth; skip
        }
      }
    }
  }

  return {
    validated: research,
    additionalInsights,
  };
}

Paso 4: Genera informes de investigación

Transforma la salida bruta de la investigación en informes pulidos y compartibles.

Typescript
interface ResearchReport {
  title: string;
  executiveSummary: string;
  keyFindings: string[];
  detailedAnalysis: string;
  conflictsAndCaveats: string[];
  sources: Array<{ title: string; url: string; credibility: string }>;
  methodology: string;
  generatedAt: string;
}

async function generateReport(
  research: ResearchResult,
  reportTitle: string
): Promise<ResearchReport> {
  // Generate executive summary
  const summaryResult = await client.callTool({
    name: 'summarize_content',
    arguments: {
      text: research.synthesis,
    },
  });

  const summary = JSON.parse(summaryResult.content[0].text);

  // Extract key findings as bullet points
  const keyFindings = research.sources
    .flatMap(s => s.relevantFindings)
    .filter((finding, index, self) => self.indexOf(finding) === index)
    .slice(0, 10);

  return {
    title: reportTitle,
    executiveSummary: summary.summary,
    keyFindings,
    detailedAnalysis: research.synthesis,
    conflictsAndCaveats: research.conflicts.map(
      c => `Conflicting information on "${c.topic}": ${c.positions.length} different positions found across sources`
    ),
    sources: research.sources.map(s => ({
      title: s.title,
      url: s.url,
      credibility: s.credibilityScore > 0.7 ? 'High' : s.credibilityScore > 0.4 ? 'Medium' : 'Low',
    })),
    methodology: `Automated research using CrawlForge deep_research. ${research.sources.length} sources analyzed with ${research.queryExpansions.length} query variations. Credibility threshold: ${research.confidence}.`,
    generatedAt: new Date().toISOString(),
  };
}

Paso 5: Crea flujos de investigación recurrentes

Para necesidades de investigación continuas, configura flujos de trabajo programados que rastreen cómo evolucionan los temas con el tiempo.

Typescript
interface RecurringResearch {
  id: string;
  topic: string;
  schedule: 'daily' | 'weekly' | 'monthly';
  config: ResearchConfig;
  history: ResearchReport[];
}

async function runRecurringResearch(
  research: RecurringResearch
): Promise<ResearchReport> {
  // Run the research
  const result = await runResearch(research.config);

  // Generate the report
  const report = await generateReport(
    result,
    `${research.topic} - ${new Date().toISOString().split('T')[0]}`
  );

  // Compare with previous report if available
  if (research.history.length > 0) {
    const previousReport = research.history[research.history.length - 1];
    const newFindings = report.keyFindings.filter(
      f => !previousReport.keyFindings.includes(f)
    );

    if (newFindings.length > 0) {
      console.log(`\nNew findings since last report:`);
      newFindings.forEach(f => console.log(`  - ${f}`));
    }
  }

  research.history.push(report);
  return report;
}

Análisis del coste en credits

deep_research, a 10 credits por llamada, es la herramienta individual más cara de CrawlForge, pero sustituye lo que de otro modo requeriría entre 15 y 30 llamadas a herramientas individuales.

Tipo de investigaciónHerramientas usadasCredits totalesEquivalente manual
Investigación rápida de un temadeep_research102-3 horas
Con validación de fuentes+ extract_content x5204-5 horas
Con análisis de PDFs+ process_document x2265-6 horas
Generación de informe completo+ summarize_content286-8 horas

Costes mensuales para un equipo de investigación:

UsoCredits/mesPlan recomendado
10 informes/mes280Plan gratuito (1.000 credits)
50 informes/mes1.400Hobby ($19/mes, 5.000 credits)
200 informes/mes5.600Professional ($99/mes, 100.000 credits)

Resultados y beneficios

Un agente de investigación de CrawlForge ofrece:

  • Velocidad: completa un informe de investigación en 2-5 minutos en lugar de 4-6 horas
  • Amplitud: analiza de 20 a 50 fuentes por consulta frente a 5-10 manualmente
  • Precisión: la detección de conflictos integrada captura contradicciones que los humanos pasan por alto
  • Consistencia: la misma metodología cada vez, sin sesgo del investigador
  • Auditabilidad: cada fuente citada con puntuaciones de credibilidad

La herramienta es especialmente potente para la investigación recurrente -- rastrear cómo evoluciona un mercado cada semana, monitorizar cambios regulatorios o mantener al día un documento del panorama competitivo.

Preguntas frecuentes

deep_research analiza muchas más fuentes (hasta 50 por consulta frente a las 5-10 de la búsqueda basada en chat), incluye puntuación de credibilidad, detecta conflictos entre fuentes y devuelve datos estructurados que puedes procesar de forma programática. Las herramientas basadas en chat son mejores para respuestas rápidas y conversacionales. CrawlForge es mejor para flujos de investigación sistemáticos y repetibles.

¿Puedo usar deep_research para investigación académica?

Sí. Configura researchApproach: 'academic' y sourceTypes: ['academic', 'government'] para priorizar fuentes académicas. El umbral de credibilidad filtra automáticamente las fuentes de baja calidad. Ten en cuenta que deep_research funciona con fuentes web de acceso público -- no puede acceder a artículos tras muros de pago.

¿Merecen la pena los 10 credits por llamada?

Considera la alternativa: manualmente, usarías search_web (5 credits) + varias llamadas a extract_content (2 credits cada una) + analyze_content (3 credits cada una). Hacer esto para 20 fuentes costaría más de 100 credits. deep_research empaqueta todo esto en una sola llamada de 10 credits con síntesis integrada.


Prueba la investigación profunda ahora mismo. Empieza gratis con 1.000 credits -- suficiente para 100 informes de investigación. No se requiere tarjeta de crédito.

Recursos relacionados:

Pruébalo tú mismo — sin necesidad de registrarte

Explora las 31 herramientas de scraping y extracción de CrawlForge en el playground y luego empieza gratis con 1,000 credits.

1,000 credits gratis • Por única vez • No se requiere tarjeta de crédito

Etiquetas

  • deep-research
  • ai-agents
  • research-automation
  • web-scraping
  • mcp
  • ai-engineering
  • automation

Sobre el autor

CrawlForge Team

Equipo de Ingeniería

Construimos el MCP server de web scraping más completo. Creamos herramientas que ayudan a los desarrolladores a extraer, analizar y transformar datos web para aplicaciones de IA.

Newsletter

Mantente al día con los últimos artículos

Recibe tutoriales, novedades del producto y consejos de web scraping en tu bandeja de entrada.

Sin spam. Cancela tu suscripción cuando quieras.

Sigue leyendo

Artículos relacionados

Casos de uso

9m

Automatiza auditorías SEO con CrawlForge MCP

Ejecuta auditorías técnicas de SEO completas automáticamente. Rastrea tu sitio, comprueba metadatos, encuentra enlaces rotos y genera informes accionables con CrawlForge.