FlowTruxFlowTrux/Docs
Docsworkflows

Workflow Examples

Common workflow patterns and recipes for building with FlowTrux.

This page describes common workflow patterns you can build in FlowTrux. Each example outlines the node sequence and configuration approach.

1. Slack Notification from AI Summary

Pattern: Manual Trigger --> Agent --> Action:MCP

A simple three-node workflow that takes input text, summarizes it with an AI agent, and posts the summary to Slack.

Nodes:

  1. Trigger (Manual) -- static data containing the text to summarize:

    { "content": "Paste your long document here..." }
    
  2. Agent -- configured with a system prompt like "You are a concise summarizer" and user prompt:

    Summarize the following in 3 bullet points: {{trigger.data.content}}
    
  3. Action:MCP -- Slack server, send_message tool:

    {
      "channel": "general",
      "text": "{{steps.agent-1.output.response}}"
    }
    

2. Data Pipeline: API to Google Sheets

Pattern: Webhook --> Action:HTTP --> Agent --> Action:MCP

Receive data via webhook, fetch additional details from an API, analyze with an agent, and write results to a Google Sheet.

Nodes:

  1. Trigger (Webhook, minimal response mode) -- external service posts a payload with identifiers.

  2. Action:HTTP (GET) -- fetch full data from an external API:

    URL: https://api.example.com/data/{{trigger.data.id}}
    
  3. Agent -- analyze the fetched data:

    Analyze this data and extract key metrics: {{steps.http-1.output.data}}
    
  4. Action:MCP -- Google Workspace server, sheets_append tool:

    {
      "spreadsheetId": "your-sheet-id",
      "range": "Sheet1!A:D",
      "values": "{{steps.agent-1.output.response}}"
    }
    

3. Uptime Monitoring with Alerts

Pattern: Cron --> Action:HTTP --> Logic:If-Else --> Action:MCP

Check a service health endpoint on a schedule and send an alert if it is down.

Nodes:

  1. Trigger (Cron) -- expression */5 * * * * to check every 5 minutes.

  2. Action:HTTP (GET) -- call the health check endpoint:

    URL: https://api.example.com/health
    
  3. Logic:If-Else -- condition:

    {{steps.http-1.output.status}} !== 200
    
  4. Action:MCP (true branch) -- Telegram server, send_message tool:

    {
      "text": "ALERT: Service is down. Status: {{steps.http-1.output.status}}"
    }
    

The false branch (service healthy) can be left unconnected or connected to a logging node.

4. Loop Processing

Pattern: Webhook --> Agent --> Logic:Loop --> Action:MCP --> Aggregator:Concat

Process a list of items individually by looping over an array extracted by an agent.

Nodes:

  1. Trigger (Webhook, lastNode response mode) -- receives a batch payload.

  2. Agent -- extract structured items from the input:

    Extract all action items from this text as a JSON array of objects
    with "title" and "priority" fields: {{trigger.data.content}}
    
  3. Logic:Loop -- condition set to the agent's output array:

    {{steps.agent-1.output.response}}
    
  4. Action:MCP (inside loop body) -- process each item. For example, create a YouTrack issue:

    {
      "summary": "{{item.title}}",
      "priority": "{{item.priority}}"
    }
    
  5. Aggregator:Concat -- collects all loop iteration results into a single array.

5. Scheduled Backup with Notification

Pattern: Cron --> Action:MCP --> Action:MCP --> Action:MCP

Run a database backup on a schedule, write it to the filesystem, and send a notification.

Nodes:

  1. Trigger (Cron) -- expression 0 2 * * * to run daily at 2:00 AM.

  2. Action:MCP -- filesystem server or custom server to execute the backup command.

  3. Action:MCP -- filesystem server, write the output to a backup file.

  4. Action:MCP -- Telegram server, send_message tool:

    {
      "text": "Backup completed at {{steps.action-2.output.path}}"
    }
    

6. Multi-Agent Research Pipeline

Pattern: Trigger --> Agent --> Parallel[Agent, Agent] --> Aggregator:Merge --> Action:MCP

Use multiple agents in parallel to produce different analyses, then merge and deliver the results.

Nodes:

  1. Trigger (Manual) -- provide a research topic:

    { "topic": "Impact of AI on healthcare diagnostics" }
    
  2. Agent (Researcher) -- gather information:

    Research the following topic and provide detailed findings: {{trigger.data.topic}}
    
  3. Logic:Parallel -- splits execution into two concurrent branches:

    • Branch A -- Agent (Summarizer):

      Write a concise executive summary of these findings: {{steps.researcher.output.response}}
      
    • Branch B -- Agent (Sentiment Analyst):

      Analyze the sentiment and key concerns in these findings: {{steps.researcher.output.response}}
      
  4. Aggregator:Merge -- combines both branch outputs into a single object.

  5. Action:MCP -- Slack server, send_formatted_report tool:

    {
      "channel": "research",
      "title": "Research Report: {{trigger.data.topic}}",
      "sections": [
        { "heading": "Summary", "content": "{{steps.summarizer.output.response}}" },
        { "heading": "Sentiment", "content": "{{steps.sentiment.output.response}}" }
      ]
    }
    

Tips for Building Workflows

  • Start small. Build and test one or two nodes at a time before adding complexity.
  • Use manual triggers during development. Switch to webhook or cron once the workflow logic is validated.
  • Check node outputs in execution history. Expand individual node logs to inspect the exact data being passed between nodes.
  • Use the Transform action to reshape data between nodes when the output format of one node does not match the expected input of the next.
  • Use minimal webhook mode for integrations that do not need the workflow result. This avoids holding the HTTP connection open.