{
  "workflow": {
    "id": 5957,
    "name": "Analyze competitor content performance with Bright Data MCP & GPT-4o",
    "views": 557,
    "recentViews": 0,
    "totalViews": 557,
    "createdAt": "2025-07-13T19:01:02.325Z",
    "description": "This workflow automatically analyzes competitor content performance across various platforms to understand what content resonates with their audience. It saves you time by eliminating the need to manually track competitor content and provides insights into successful content strategies and engagement patterns.\n\n## Overview\n\nThis workflow automatically scrapes competitor websites, blogs, and social media to analyze content performance metrics including engagement rates, shares, comments, and audience response. It uses Bright Data to access competitor content without restrictions and AI to intelligently analyze performance data and extract actionable insights.\n\n## Tools Used\n\n- **n8n**: The automation platform that orchestrates the workflow\n- **Bright Data**: For scraping competitor content platforms without being blocked\n- **OpenAI**: AI agent for intelligent content performance analysis\n- **Google Sheets**: For storing competitor content analysis and performance metrics\n\n## How to Install\n\n1. **Import the Workflow**: Download the .json file and import it into your n8n instance\n2. **Configure Bright Data**: Add your Bright Data credentials to the MCP Client node\n3. **Set Up OpenAI**: Configure your OpenAI API credentials\n4. **Configure Google Sheets**: Connect your Google Sheets account and set up your content analysis spreadsheet\n5. **Customize**: Define competitor URLs and content performance tracking parameters\n\n## Use Cases\n\n- **Content Strategy**: Learn from high-performing competitor content to improve your own strategy\n- **Competitive Analysis**: Track competitor content trends and audience engagement patterns\n- **Content Optimization**: Identify content types and topics that drive the most engagement\n- **Market Research**: Understand what content resonates with your target audience\n\n## Connect with Me\n\n- **Website**: https://www.nofluff.online\n- **YouTube**: https://www.youtube.com/@YaronBeen/videos\n- **LinkedIn**: https://www.linkedin.com/in/yaronbeen/\n- **Get Bright Data**: https://get.brightdata.com/1tndi4600b25 (Using this link supports my free workflows with a small commission)\n\n#n8n #automation #competitoranalysis #contentperformance #brightdata #webscraping #contentmarketing #n8nworkflow #workflow #nocode #contentanalysis #competitormonitoring #contentresearch #engagementanalysis #marketresearch #contentintelligence #competitiveintelligence #contentoptimization #performancetracking #contentmetrics #marketanalysis #contentaudit #brandanalysis #contentstrategy #digitalmarketing #contentinsights #socialmediaanalysis #contentmonitoring #performanceanalysis #competitorresearch",
    "workflow": {
      "id": "iTYMiElAxoA6mGFI",
      "meta": {
        "instanceId": "60046904b104f0f72b2629a9d88fe9f676be4035769f1f08dad1dd38a76b9480",
        "templateCredsSetupCompleted": true
      },
      "name": "14 Analyze Competitor Content Performance",
      "tags": [],
      "nodes": [
        {
          "id": "ae08fbec-aa27-4209-9bd4-e91fd401ca70",
          "name": "⚡ Start: Execute Workflow",
          "type": "n8n-nodes-base.manualTrigger",
          "position": [
            0,
            0
          ],
          "parameters": {},
          "typeVersion": 1
        },
        {
          "id": "6be3a9b3-f168-41f2-98b1-9cc8235efa25",
          "name": "📝 Input: Competitor Details",
          "type": "n8n-nodes-base.set",
          "position": [
            220,
            0
          ],
          "parameters": {
            "options": {},
            "assignments": {
              "assignments": [
                {
                  "id": "f57bb4aa-1040-4315-894d-51e373012522",
                  "name": "url",
                  "type": "string",
                  "value": "https://medium.com/?tag=technology"
                }
              ]
            }
          },
          "typeVersion": 3.4
        },
        {
          "id": "b0a7dc50-e4d8-435d-88dd-875f69d2b9ce",
          "name": "🤖 AI Agent: Analyze Content",
          "type": "@n8n/n8n-nodes-langchain.agent",
          "position": [
            460,
            0
          ],
          "parameters": {
            "text": "=screpe the stats of the competitors website below and write an email to suggest improvement:\n{{ $json.url }}",
            "options": {},
            "promptType": "define",
            "hasOutputParser": true
          },
          "typeVersion": 2
        },
        {
          "id": "f4d838f9-ba74-405f-8035-c3d264cb1ba1",
          "name": "💬 OpenAI: Generate Insights",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            440,
            260
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4o-mini"
            },
            "options": {}
          },
          "credentials": {
            "openAiApi": {
              "id": "credential-id",
              "name": "openAiApi Credential"
            }
          },
          "typeVersion": 1.2
        },
        {
          "id": "1d5786b4-e130-4ee6-bb6c-10892038eaa7",
          "name": "🌐 MCP Scraper: Get Blog Data",
          "type": "n8n-nodes-mcp.mcpClientTool",
          "position": [
            620,
            260
          ],
          "parameters": {
            "toolName": "scrape_as_markdown",
            "operation": "executeTool",
            "toolParameters": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Tool_Parameters', ``, 'json') }}"
          },
          "credentials": {
            "mcpClientApi": {
              "id": "credential-id",
              "name": "mcpClientApi Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "d9dceb89-0b2f-4579-a521-844f6122ddc8",
          "name": "📧 Send Email: Client Suggestions",
          "type": "n8n-nodes-base.gmail",
          "position": [
            940,
            0
          ],
          "webhookId": "519f3473-e010-4851-96de-faa1b6804f12",
          "parameters": {
            "sendTo": "user@example.com",
            "message": "={{ $json.output.email.body }}",
            "options": {},
            "subject": "={{ $json.output.email.subject }}",
            "emailType": "text"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "b3a362b5-db83-463b-8339-048a1157e412",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -20,
            -1240
          ],
          "parameters": {
            "color": 5,
            "width": 380,
            "height": 1420,
            "content": "## ✅ **📂 SECTION 1 — Trigger & Input**\n\n### ⚡ Node 1: **Start: Execute Workflow**\n\n**Icon:** ⚡\n**What it does:** This node waits for you to **click “Execute Workflow.”** It’s like a start button.\n**Why it’s useful:** It gives you control — you can run this only when you’re ready to scrape & analyze.\n\n---\n\n### 📝 Node 2: **Input: Competitor Details**\n\n**Icon:** 📝\n**What it does:** Here you **manually enter** the competitor blog URLs, tags, or keywords you want to analyze.\n\n* Example: `https://moz.com/blog`, `https://ahrefs.com/blog`\n* You can also add extra fields like “Target Language” or “Topics of Interest.”\n\n**How this helps:**\n\n* You keep the workflow flexible.\n* You can reuse the same flow for any competitor.\n* Non-technical team members can easily update input.\n\n---\n\n**🔑 SECTION 1 Summary:**\nThis section **starts** your workflow and **feeds it the raw data**: **What do you want to scrape?** — It’s **your starting point**.\n\n---\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "778d45bd-873b-48f1-85d2-31e3d7886899",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            420,
            -1720
          ],
          "parameters": {
            "color": 3,
            "width": 340,
            "height": 1900,
            "content": "## 🤖 **📂 SECTION 2 — AI Analysis & Scraping**\n\n### 🧩 Node 3: **AI Agent: Analyze Content**\n\n**Icon:** 🤖\n**What it does:** This is the **brain**. It connects to:\n\n* OpenAI Chat Model 🧠 (for text understanding & suggestions)\n* MCP Client 🌐 (for real-time scraping)\n* Output Parser 🗂️ (for formatting results)\n\n**How it works:**\n\n* The AI Agent takes your input (competitor URLs).\n* It tells the MCP Client to scrape those sites for:\n\n  * Blog titles\n  * Publish dates\n  * Traffic stats\n* Then, OpenAI checks what your competitors cover that **you don’t**.\n* The Output Parser converts the AI output into clean, usable JSON with **subject + body** for email.\n\n---\n\n### 💬 Sub Node: **OpenAI: Generate Insights**\n\n**Icon:** 💬\n**What it does:** Creates text output:\n\n* Finds strengths\n* Spots gaps in your content\n* Writes suggestions for improvement\n\n---\n\n### 🌐 Sub Node: **MCP Scraper: Get Blog Data**\n\n**Icon:** 🌐\n**What it does:** Bright Data MCP pulls real traffic numbers, page details, etc., from competitor blogs.\n\n* Uses proxies & anti-bot tech to avoid blocks.\n* Delivers real data you couldn’t get manually.\n\n---\n\n### 🗂️ Sub Node: **Parser: Format Email JSON**\n\n**Icon:** 🗂️\n**What it does:** Takes the AI’s text output and converts it to a clean JSON with **subject** and **body** keys — perfect for sending in an email.\n\n* Ensures no messy or broken text.\n* Makes the next step (sending) easy and automated.\n\n---\n\n**🔑 SECTION 2 Summary:**\nThis section **does the heavy lifting**:\n\n* Scrapes real competitor data\n* Uses AI to **analyze & recommend**\n* Prepares the output in a format ready for your client\n\nEven a beginner can see: **You get powerful insights with zero manual scraping or writing.**\n\n---\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "1ccefd74-26dc-43f5-94cf-ac2bad6d7b13",
          "name": "Sticky Note2",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            880,
            -480
          ],
          "parameters": {
            "color": 6,
            "width": 220,
            "height": 660,
            "content": "## 📧 **📂 SECTION 3 — Send Email**\n\n### 📧 Node 4: **Send Email: Client Suggestions**\n\n**Icon:** 📧\n**What it does:** Takes the **structured subject + body** from the previous step and automatically sends a beautiful email to your client via **Gmail**.\n\n* Can send to any recipient\n* Looks professional\n* No need to copy-paste anything\n\n---\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "41243b47-ad5e-4ed3-9fe9-dbea4f8a4304",
          "name": "Sticky Note5",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            1220,
            -480
          ],
          "parameters": {
            "color": 7,
            "width": 380,
            "height": 240,
            "content": "## I’ll receive a tiny commission if you join Bright Data through this link—thanks for fueling more free content!\n\n### https://get.brightdata.com/1tndi4600b25"
          },
          "typeVersion": 1
        },
        {
          "id": "15069b6b-7520-4227-bcdf-b13afca311dc",
          "name": "Sticky Note9",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1700,
            -1220
          ],
          "parameters": {
            "color": 4,
            "width": 1300,
            "height": 320,
            "content": "=======================================\n            WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: https://www.youtube.com/@YaronBeen/videos\n   - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
          },
          "typeVersion": 1
        },
        {
          "id": "74ba41a7-5ff0-4d39-bdad-0f3389ad7c4a",
          "name": "Sticky Note4",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1700,
            -880
          ],
          "parameters": {
            "color": 4,
            "width": 1289,
            "height": 3578,
            "content": "## 🚀 **Workflow: Analyze Competitor Content & Send Email**\n\nThis automation **scrapes competitor blog stats**, **analyzes them with AI**, and **emails clear improvement suggestions** — all **no-code** using **n8n**, **Bright Data MCP**, and **OpenAI**.\n\n---\n\n## ✅ **📂 SECTION 1 — Trigger & Input**\n\n### ⚡ Node 1: **Start: Execute Workflow**\n\n**Icon:** ⚡\n**What it does:** This node waits for you to **click “Execute Workflow.”** It’s like a start button.\n**Why it’s useful:** It gives you control — you can run this only when you’re ready to scrape & analyze.\n\n---\n\n### 📝 Node 2: **Input: Competitor Details**\n\n**Icon:** 📝\n**What it does:** Here you **manually enter** the competitor blog URLs, tags, or keywords you want to analyze.\n\n* Example: `https://moz.com/blog`, `https://ahrefs.com/blog`\n* You can also add extra fields like “Target Language” or “Topics of Interest.”\n\n**How this helps:**\n\n* You keep the workflow flexible.\n* You can reuse the same flow for any competitor.\n* Non-technical team members can easily update input.\n\n---\n\n**🔑 SECTION 1 Summary:**\nThis section **starts** your workflow and **feeds it the raw data**: **What do you want to scrape?** — It’s **your starting point**.\n\n---\n\n## 🤖 **📂 SECTION 2 — AI Analysis & Scraping**\n\n### 🧩 Node 3: **AI Agent: Analyze Content**\n\n**Icon:** 🤖\n**What it does:** This is the **brain**. It connects to:\n\n* OpenAI Chat Model 🧠 (for text understanding & suggestions)\n* MCP Client 🌐 (for real-time scraping)\n* Output Parser 🗂️ (for formatting results)\n\n**How it works:**\n\n* The AI Agent takes your input (competitor URLs).\n* It tells the MCP Client to scrape those sites for:\n\n  * Blog titles\n  * Publish dates\n  * Traffic stats\n* Then, OpenAI checks what your competitors cover that **you don’t**.\n* The Output Parser converts the AI output into clean, usable JSON with **subject + body** for email.\n\n---\n\n### 💬 Sub Node: **OpenAI: Generate Insights**\n\n**Icon:** 💬\n**What it does:** Creates text output:\n\n* Finds strengths\n* Spots gaps in your content\n* Writes suggestions for improvement\n\n---\n\n### 🌐 Sub Node: **MCP Scraper: Get Blog Data**\n\n**Icon:** 🌐\n**What it does:** Bright Data MCP pulls real traffic numbers, page details, etc., from competitor blogs.\n\n* Uses proxies & anti-bot tech to avoid blocks.\n* Delivers real data you couldn’t get manually.\n\n---\n\n### 🗂️ Sub Node: **Parser: Format Email JSON**\n\n**Icon:** 🗂️\n**What it does:** Takes the AI’s text output and converts it to a clean JSON with **subject** and **body** keys — perfect for sending in an email.\n\n* Ensures no messy or broken text.\n* Makes the next step (sending) easy and automated.\n\n---\n\n**🔑 SECTION 2 Summary:**\nThis section **does the heavy lifting**:\n\n* Scrapes real competitor data\n* Uses AI to **analyze & recommend**\n* Prepares the output in a format ready for your client\n\nEven a beginner can see: **You get powerful insights with zero manual scraping or writing.**\n\n---\n\n## 📧 **📂 SECTION 3 — Send Email**\n\n### 📧 Node 4: **Send Email: Client Suggestions**\n\n**Icon:** 📧\n**What it does:** Takes the **structured subject + body** from the previous step and automatically sends a beautiful email to your client via **Gmail**.\n\n* Can send to any recipient\n* Looks professional\n* No need to copy-paste anything\n\n---\n\n**🔑 SECTION 3 Summary:**\n**Your final result — the insights become a real email.**\n\n* Saves time writing reports\n* Ensures your client sees clear recommendations\n* Automates the boring parts\n\n---\n\n## 🌟 **Benefits for Beginners**\n\n✅ **No coding needed:** You drag, drop, connect.\n✅ **Scalable:** Add more competitors anytime.\n✅ **Reusable:** Just change the input URLs.\n✅ **Professional output:** High-value insights in seconds.\n✅ **End-to-end:** From scraping to client inbox in one click.\n\n---\n\n## 🗂️ **💡 Final Tip**\n\nAdd emojis 📝 🤖 💬 🌐 🗂️ 📧 to your node names in **n8n** — it makes complex flows clear **at a glance**.\n\n---\n\n## 🔗 **Ready to Run!**\n\nYour final workflow:\n\n```\n⚡ Start → 📝 Input → 🤖 AI Agent\n         ↘️ 💬 OpenAI → 🌐 MCP → 🗂️ Parser → 📧 Send Email\n```\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "f5a5745c-f194-4fc5-91b6-54f2bc248c14",
          "name": "Auto-fixing Output Parser",
          "type": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
          "position": [
            760,
            260
          ],
          "parameters": {
            "options": {}
          },
          "typeVersion": 1
        },
        {
          "id": "b2e2a2e0-1f96-4219-9f22-973d1cb9fe4f",
          "name": "OpenAI Chat Model",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            720,
            480
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4o-mini"
            },
            "options": {}
          },
          "credentials": {
            "openAiApi": {
              "id": "credential-id",
              "name": "openAiApi Credential"
            }
          },
          "typeVersion": 1.2
        },
        {
          "id": "c66c1bf2-cd09-4038-8d22-689b3052b66f",
          "name": "Structured Output Parser",
          "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
          "position": [
            900,
            480
          ],
          "parameters": {
            "jsonSchemaExample": "{\n  \"email\": {\n    \"subject\": \"Suggestions for Improvement on Your Website\",\n    \"body\": \"Dear [Recipient's Name],\\n\\nI hope this message finds you well. I recently took the time to explore your website, specifically focusing on the Technology tag section on Medium, and I wanted to share some insights and suggestions that could enhance user experience and engagement.\\n\\n**Strengths:**\\n- Clean Layout: The overall design of Medium is uncluttered and visually appealing, making it easy for users to navigate and engage with content.\\n- Engaging Content: The use of compelling narratives alongside diverse topics helps to draw in readers and maintain their interest.\\n\\n**Areas for Improvement:**\\n1. User Interaction: Encouraging user interaction can be beneficial. Incorporating more visible call-to-action buttons for signing up or writing could potentially increase conversions from readers into writers or subscribers.\\n2. Search Functionality: Although the content is well-curated, enhancing the search functionality to enable users to find specific topics or articles more efficiently would improve user experience significantly.\\n3. Performance Optimization: Analyzing page load times and optimizing images and scripts may help retain users who might otherwise leave due to slow loading speeds.\\n4. Mobile Responsiveness: While Medium has a good mobile design, ensuring that all features are seamlessly available on mobile devices can cater to the increasing number of mobile users.\\n5. Personalization Features: Implementing personalized content recommendations based on user behavior could enhance user engagement by providing tailored reading experiences.\\n\\nI believe addressing these areas could significantly elevate the user experience on your platform and increase both reader and writer engagement.\\n\\nThank you for considering these suggestions. I look forward to your thoughts.\\n\\nBest regards,\\n\\n[Your Name]\\n[Your Position]\\n[Your Contact Information]\\n[Your Company Name]\"\n  }\n}\n"
          },
          "typeVersion": 1.2
        }
      ],
      "active": false,
      "pinData": {},
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "9d213fd6-0607-4d70-89bf-a574a3e933e1",
      "connections": {
        "OpenAI Chat Model": {
          "ai_languageModel": [
            [
              {
                "node": "Auto-fixing Output Parser",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "Structured Output Parser": {
          "ai_outputParser": [
            [
              {
                "node": "Auto-fixing Output Parser",
                "type": "ai_outputParser",
                "index": 0
              }
            ]
          ]
        },
        "Auto-fixing Output Parser": {
          "ai_outputParser": [
            [
              {
                "node": "🤖 AI Agent: Analyze Content",
                "type": "ai_outputParser",
                "index": 0
              }
            ]
          ]
        },
        "⚡ Start: Execute Workflow": {
          "main": [
            [
              {
                "node": "📝 Input: Competitor Details",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "💬 OpenAI: Generate Insights": {
          "ai_languageModel": [
            [
              {
                "node": "🤖 AI Agent: Analyze Content",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "📝 Input: Competitor Details": {
          "main": [
            [
              {
                "node": "🤖 AI Agent: Analyze Content",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "🤖 AI Agent: Analyze Content": {
          "main": [
            [
              {
                "node": "📧 Send Email: Client Suggestions",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "🌐 MCP Scraper: Get Blog Data": {
          "ai_tool": [
            [
              {
                "node": "🤖 AI Agent: Analyze Content",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 15,
      "nodeTypes": {
        "n8n-nodes-base.set": {
          "count": 1
        },
        "n8n-nodes-base.gmail": {
          "count": 1
        },
        "n8n-nodes-base.stickyNote": {
          "count": 6
        },
        "n8n-nodes-mcp.mcpClientTool": {
          "count": 1
        },
        "n8n-nodes-base.manualTrigger": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.agent": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.lmChatOpenAi": {
          "count": 2
        },
        "@n8n/n8n-nodes-langchain.outputParserAutofixing": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.outputParserStructured": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Yaron Been",
      "username": "yaron-nofluff",
      "bio": "Building AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host\n\nIf you need any help with Automations, feel free to reach out via linkedin:\nhttps://www.linkedin.com/in/yaronbeen/\n\nAnd check out my Youtube channel:\nhttps://www.youtube.com/@YaronBeen/videos",
      "verified": true,
      "links": [
        "https://www.nofluff.online/automation-services/"
      ],
      "avatar": "https://gravatar.com/avatar/a4e4dcaa1f76ff5266bbf80e8df86d22efda890474c68f7796e72fd82e3f2375?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 38,
        "icon": "fa:pen",
        "name": "n8n-nodes-base.set",
        "codex": {
          "data": {
            "alias": [
              "Set",
              "JS",
              "JSON",
              "Filter",
              "Transform",
              "Map"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/",
                  "icon": "🏭",
                  "label": "Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"
                },
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/",
                  "icon": "📈",
                  "label": "Automatically pulling and visualizing data with n8n"
                },
                {
                  "url": "https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/",
                  "icon": "📡",
                  "label": "Database Monitoring and Alerting with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
                  "icon": "🧾",
                  "label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
                  "icon": "🔗",
                  "label": "How to build a low-code, self-hosted URL shortener in 3 steps"
                },
                {
                  "url": "https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/",
                  "icon": "⚙️",
                  "label": "Automate your data processing pipeline in 9 steps"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/",
                  "icon": "📹",
                  "label": "The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/",
                  "icon": "🧰",
                  "label": "Learn to Build Powerful API Endpoints Using Webhooks"
                },
                {
                  "url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
                  "icon": "📈",
                  "label": "How a Membership Development Manager automates his work and investments"
                },
                {
                  "url": "https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
                  "icon": "📈",
                  "label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
                  "icon": "🎖",
                  "label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Data Transformation"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Edit Fields"
        },
        "iconData": {
          "icon": "pen",
          "type": "icon"
        },
        "displayName": "Edit Fields (Set)",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 356,
        "icon": "file:gmail.svg",
        "name": "n8n-nodes-base.gmail",
        "codex": {
          "data": {
            "alias": [
              "email",
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
                  "icon": "🧬",
                  "label": "Why business process automation with n8n can change your daily life"
                },
                {
                  "url": "https://n8n.io/blog/supercharging-your-conference-registration-process-with-n8n/",
                  "icon": "🎫",
                  "label": "Supercharging your conference registration process with n8n"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/your-business-doesnt-need-you-to-operate/",
                  "icon": " 🖥️",
                  "label": "Hey founders! Your business doesn't need you to operate"
                },
                {
                  "url": "https://n8n.io/blog/using-automation-to-boost-productivity-in-the-workplace/",
                  "icon": "💪",
                  "label": "Using Automation to Boost Productivity in the Workplace"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.gmail/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Gmail"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYiIGhlaWdodD0iMTkzIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCI+PHBhdGggZmlsbD0iIzQyODVGNCIgZD0iTTU4LjE4MiAxOTIuMDVWOTMuMTRMMjcuNTA3IDY1LjA3NyAwIDQ5LjUwNHYxMjUuMDkxYzAgOS42NTggNy44MjUgMTcuNDU1IDE3LjQ1NSAxNy40NTV6Ii8+PHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTE5Ny44MTggMTkyLjA1aDQwLjcyN2M5LjY1OSAwIDE3LjQ1NS03LjgyNiAxNy40NTUtMTcuNDU1VjQ5LjUwNWwtMzEuMTU2IDE3LjgzNy0yNy4wMjYgMjUuNzk4eiIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im01OC4xODIgOTMuMTQtNC4xNzQtMzguNjQ3IDQuMTc0LTM2Ljk4OUwxMjggNjkuODY4bDY5LjgxOC01Mi4zNjQgNC42NyAzNC45OTItNC42NyA0MC42NDRMMTI4IDE0NS41MDR6Ii8+PHBhdGggZmlsbD0iI0ZCQkMwNCIgZD0iTTE5Ny44MTggMTcuNTA0VjkzLjE0TDI1NiA0OS41MDRWMjYuMjMxYzAtMjEuNTg1LTI0LjY0LTMzLjg5LTQxLjg5LTIwLjk0NXoiLz48cGF0aCBmaWxsPSIjQzUyMjFGIiBkPSJtMCA0OS41MDQgMjYuNzU5IDIwLjA3TDU4LjE4MiA5My4xNFYxNy41MDRMNDEuODkgNS4yODZDMjQuNjEtNy42NiAwIDQuNjQ2IDAgMjYuMjN6Ii8+PC9zdmc+"
        },
        "displayName": "Gmail",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "id": 565,
        "icon": "fa:sticky-note",
        "name": "n8n-nodes-base.stickyNote",
        "codex": {
          "data": {
            "alias": [
              "Comments",
              "Notes",
              "Sticky"
            ],
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Sticky Note",
          "color": "#FFD233"
        },
        "iconData": {
          "icon": "sticky-note",
          "type": "icon"
        },
        "displayName": "Sticky Note",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 838,
        "icon": "fa:mouse-pointer",
        "name": "n8n-nodes-base.manualTrigger",
        "codex": {
          "data": {
            "resources": {
              "generic": [],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.manualworkflowtrigger/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "When clicking ‘Execute workflow’",
          "color": "#909298"
        },
        "iconData": {
          "icon": "mouse-pointer",
          "type": "icon"
        },
        "displayName": "Manual Trigger",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 1119,
        "icon": "fa:robot",
        "name": "@n8n/n8n-nodes-langchain.agent",
        "codex": {
          "data": {
            "alias": [
              "LangChain",
              "Chat",
              "Conversational",
              "Plan and Execute",
              "ReAct",
              "Tools"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Agents",
                "Root Nodes"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "AI Agent",
          "color": "#404040"
        },
        "iconData": {
          "icon": "robot",
          "type": "icon"
        },
        "displayName": "AI Agent",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1153,
        "icon": "file:openAiLight.svg",
        "name": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Language Models",
                "Root Nodes"
              ],
              "Language Models": [
                "Chat Models (Recommended)"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "OpenAI Chat Model"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="
        },
        "displayName": "OpenAI Chat Model",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1175,
        "icon": "fa:tools",
        "name": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserautofixing/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Output Parsers"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Auto-fixing Output Parser"
        },
        "iconData": {
          "icon": "tools",
          "type": "icon"
        },
        "displayName": "Auto-fixing Output Parser",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1179,
        "icon": "fa:code",
        "name": "@n8n/n8n-nodes-langchain.outputParserStructured",
        "codex": {
          "data": {
            "alias": [
              "json",
              "zod"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Output Parsers"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Structured Output Parser"
        },
        "iconData": {
          "icon": "code",
          "type": "icon"
        },
        "displayName": "Structured Output Parser",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 32,
        "name": "Market Research"
      },
      {
        "id": 49,
        "name": "AI Summarization"
      }
    ],
    "image": []
  }
}