Research Pipeline
Build an automated research workflow that fetches information, summarizes findings, and extracts key insights.
Difficulty: Intermediate Time: 20 minutes
What You'll Build
A flow that:
- Takes a research topic as input
- Searches for relevant information
- Summarizes findings
- Extracts actionable insights
- Outputs a structured report
TBD: Replace with screenshot of the research pipeline in the flow editor
Prerequisites
- Sciorex installed
- Understanding of Flows
- (Optional) Web search MCP server configured
- (Optional) Research MCP server enabled for academic paper search
Overview
┌─────────┐ ┌──────────┐ ┌───────────┐ ┌────────────┐
│ Input │───▶│ Search │───▶│ Summarize │───▶│ Extract │
│ Topic │ │ Agent │ │ Agent │ │ Insights │
└─────────┘ └──────────┘ └───────────┘ └────────────┘
│
▼
┌────────────┐
│ End │
└────────────┘Step 1: Create the Agents
Search Agent
name: Research Searcher
description: Searches for information on a topic
systemPrompt: |
You are a research assistant. Given a topic:
1. Use web search to find relevant, authoritative sources
2. Focus on recent information (last 2 years preferred)
3. Gather at least 5 different sources
4. For each source, note:
- Title and URL
- Key points
- Publication date
- Credibility assessment
When the sciorex-research MCP server is available, also use
sciorex_search_papers to search academic databases for peer-reviewed
sources. This searches across Semantic Scholar, OpenAlex, CrossRef,
arXiv, PubMed, and DBLP simultaneously.
Return structured data that can be processed further.
model: claude-sonnet-5-0
mcpServers:
- sciorex-research
allowedTools:
- tool: WebSearch
allowed: true
- tool: WebFetch
allowed: trueSummarizer Agent
name: Research Summarizer
description: Summarizes research findings
systemPrompt: |
You are an expert at synthesizing research. Given multiple sources:
1. Identify common themes and consensus views
2. Note any contradictions or debates
3. Highlight the most important findings
4. Organize by relevance, not source
Write a clear, comprehensive summary that someone unfamiliar
with the topic could understand.
model: claude-sonnet-5-0
thinkingLevel: thinkInsight Extractor Agent
name: Insight Extractor
description: Extracts actionable insights from research
systemPrompt: |
You are an analyst who extracts actionable insights. Given research:
1. Identify key takeaways
2. Note practical applications
3. Highlight risks or concerns
4. Suggest next steps or areas for deeper research
Format as a structured report with clear sections.
model: claude-sonnet-5-0
thinkingLevel: think-hard
outputSchema:
type: object
properties:
keyTakeaways:
type: array
items:
type: string
applications:
type: array
items:
type: string
risks:
type: array
items:
type: string
nextSteps:
type: array
items:
type: stringStep 2: Build the Flow
- Go to Flows → + New Flow
- Name it "Research Pipeline"
Flow Configuration
{
"name": "Research Pipeline",
"description": "Automated research workflow",
"nodes": [
{
"id": "trigger",
"type": "trigger",
"label": "Research Input",
"config": {},
"position": { "x": 0, "y": 0 },
"triggerType": "manual",
"triggerConfig": {
"inputSchema": {
"type": "object",
"properties": {
"topic": { "type": "string", "description": "Research topic to investigate" },
"depth": { "type": "string", "description": "Research depth: quick, standard, deep" }
},
"required": ["topic"]
}
}
},
{
"id": "searcher",
"type": "agent",
"label": "Search",
"config": {},
"position": { "x": 250, "y": 0 },
"agentId": "research-searcher",
"inputMapping": {
"topic": "trigger.input.topic",
"depth": "trigger.input.depth"
},
"outputMapping": {}
},
{
"id": "summarizer",
"type": "agent",
"label": "Summarize",
"config": {},
"position": { "x": 500, "y": 0 },
"agentId": "research-summarizer",
"inputMapping": {
"topic": "trigger.input.topic",
"sources": "nodes.searcher.output"
},
"outputMapping": {}
},
{
"id": "extractor",
"type": "agent",
"label": "Extract Insights",
"config": {},
"position": { "x": 750, "y": 0 },
"agentId": "insight-extractor",
"inputMapping": {
"summary": "nodes.summarizer.output",
"sources": "nodes.searcher.output"
},
"outputMapping": {}
},
{
"id": "end",
"type": "end",
"label": "Complete",
"config": {},
"position": { "x": 1000, "y": 0 },
"endType": "success"
}
],
"edges": [
{ "id": "e1", "source": "trigger", "target": "searcher" },
{ "id": "e2", "source": "searcher", "target": "summarizer" },
{ "id": "e3", "source": "summarizer", "target": "extractor" },
{ "id": "e4", "source": "extractor", "target": "end" }
],
"variables": {},
"maxIterations": 5
}Step 3: Run the Pipeline
- Click Run in the flow editor
- Enter your research topic:json
{ "topic": "Current state of AI code assistants in 2025", "depth": "standard" } - Watch the execution progress through each stage
Example Output
{
"keyTakeaways": [
"AI code assistants have reached mainstream adoption with 70%+ developer usage",
"Code quality improvements of 15-30% reported across studies",
"Security concerns remain around training data and generated code"
],
"applications": [
"Automated code review and bug detection",
"Documentation generation",
"Test case creation",
"Legacy code modernization"
],
"risks": [
"Over-reliance leading to skill atrophy",
"Potential for introducing subtle bugs",
"License and copyright considerations"
],
"nextSteps": [
"Evaluate specific tools for your tech stack",
"Establish code review processes for AI-generated code",
"Monitor emerging research on AI code quality"
]
}Using Research MCP Tools
This pipeline becomes more powerful when agents have access to the Research MCP server. Enable sciorex-research in the agent's MCP servers to give it access to:
sciorex_search_papers— Search across 6 academic databases (Semantic Scholar, OpenAlex, CrossRef, arXiv, PubMed, DBLP)sciorex_add_reference— Save papers to the reference library for future citationsciorex_compile_latex— Generate formatted summaries as LaTeX documentssciorex_annotate_pdf— Highlight key findings in downloaded PDFs
This lets the agent go beyond web search to use structured academic APIs with citation-aware results. When the Search Agent finds relevant papers via sciorex_search_papers, it can automatically save them to your reference library with sciorex_add_reference, building a curated bibliography as part of the pipeline.
Variations
Add Parallel Sources
Modify the flow to search multiple source types in parallel:
┌── Academic Search ──┐
Input ── Parallel ┼── News Search ──────┼── Merge ── Summarize ── End
└── Technical Blogs ──┘Use a Parallel node with branches pointing to three search agent nodes, then a Merge node with mergeStrategy: "all" and sourceNodes listing all three.
Add Fact Checking
Insert a verification step:
Summarize → Fact Checker → Extract Insights → EndExport to Ticket
Add a Ticket Action node at the end:
action: "create"
actionParams:
title: "Research: trigger.input.topic"
description: "nodes.extractor.output"Use link_current_flow_run to link the execution to the ticket for full traceability.
Tips
- Start narrow: Begin with specific topics before broad ones
- Check sources: Review the searcher's sources for quality
- Iterate: Run multiple times with refined prompts
- Save outputs: Link to tickets for future reference
- Enable Research MCP: For academic topics, enable the
sciorex-researchMCP server to access structured paper databases alongside general web search - Use debug mode: Step through nodes to verify data quality at each stage
