{
  "id": "OQEOWynAfK54HxNr",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Competitor Intelligence Agent: SERP Monitoring + Summary Insights with Thordata + OpenAI",
  "tags": [
    {
      "id": "Kujft2FOjmOVQAmJ",
      "name": "Engineering",
      "createdAt": "2025-04-09T01:31:00.558Z",
      "updatedAt": "2025-04-09T01:31:00.558Z"
    },
    {
      "id": "ddPkw7Hg5dZhQu2w",
      "name": "AI",
      "createdAt": "2025-04-13T05:38:08.053Z",
      "updatedAt": "2025-04-13T05:38:08.053Z"
    },
    {
      "id": "qpxJxOMCv2x7Op5c",
      "name": "SERP",
      "createdAt": "2025-04-03T15:37:19.686Z",
      "updatedAt": "2025-04-03T15:37:19.686Z"
    }
  ],
  "nodes": [
    {
      "id": "d370dfd6-2a22-4e90-816f-be5e3b84c4c4",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -304,
        -288
      ],
      "parameters": {
        "text": "={{ $json.search_query }}",
        "options": {},
        "promptType": "define"
      },
      "retryOnFail": true,
      "typeVersion": 2.2
    },
    {
      "id": "7af03b55-ba2e-4408-80ff-b81c02286993",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -592,
        -64
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "51f08152-e6e0-428a-b914-77cf14e13283",
      "name": "Bing Search",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        -416,
        -64
      ],
      "parameters": {
        "url": "https://scraperapi.thordata.com/request",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "form-urlencoded",
        "sendHeaders": true,
        "authentication": "predefinedCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "engine",
              "value": "bing"
            },
            {
              "name": "q",
              "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('parameters1_Value', ``, 'string') }}"
            },
            {
              "name": "json",
              "value": "1"
            }
          ]
        },
        "toolDescription": "HTTP request using Bing Search",
        "headerParameters": {
          "parameters": [
            {}
          ]
        },
        "nodeCredentialType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ecdb2eb4-373b-4929-b3b6-14b9063d1e91",
      "name": "Google Search",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        -256,
        -64
      ],
      "parameters": {
        "url": "https://scraperapi.thordata.com/request",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "form-urlencoded",
        "sendHeaders": true,
        "authentication": "predefinedCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "engine",
              "value": "google"
            },
            {
              "name": "q",
              "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('parameters1_Value', ``, 'string') }}"
            },
            {
              "name": "json",
              "value": "1"
            }
          ]
        },
        "toolDescription": "HTTP request using Google Search",
        "headerParameters": {
          "parameters": [
            {}
          ]
        },
        "nodeCredentialType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ddfeffd8-9c9a-42c4-be8d-36f2dbacb99c",
      "name": "Yandex Search",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        -48,
        -64
      ],
      "parameters": {
        "url": "https://scraperapi.thordata.com/request",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "form-urlencoded",
        "sendHeaders": true,
        "authentication": "predefinedCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "engine",
              "value": "yandex"
            },
            {
              "name": "q",
              "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('parameters1_Value', ``, 'string') }}"
            },
            {
              "name": "json",
              "value": "1"
            }
          ]
        },
        "toolDescription": "HTTP request using Yandex Search",
        "headerParameters": {
          "parameters": [
            {}
          ]
        },
        "nodeCredentialType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "8fdd3ba1-7f2f-4cb5-8be7-810be5048240",
      "name": "DuckDuckGo Search",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        144,
        -64
      ],
      "parameters": {
        "url": "https://scraperapi.thordata.com/request",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "form-urlencoded",
        "sendHeaders": true,
        "authentication": "predefinedCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "engine",
              "value": "duckduckgo"
            },
            {
              "name": "q",
              "value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('parameters1_Value', ``, 'string') }}"
            },
            {
              "name": "json",
              "value": "1"
            }
          ]
        },
        "toolDescription": "HTTP request using DuckDuckGo Search",
        "headerParameters": {
          "parameters": [
            {}
          ]
        },
        "nodeCredentialType": "httpBearerAuth"
      },
      "credentials": {
        "httpBearerAuth": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "d1a85744-8eb1-4a7a-9ac4-1dc11843c522",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1088,
        -1136
      ],
      "parameters": {
        "color": 7,
        "width": 160,
        "content": "![Logo](https://consumersiteimages.trustpilot.net/business-units/67b212598525b99cf90a59cc-198x149-1x.jpg)"
      },
      "typeVersion": 1
    },
    {
      "id": "884c52b5-d8a2-4c67-b2a4-ca4ccacb7677",
      "name": "When clicking \u2018Execute workflow\u2019",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1072,
        -288
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "6a142d04-f88e-436c-8a20-4f575de756b8",
      "name": "Set the Input Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        -784,
        -288
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "4a779b05-0cb9-4d93-883c-90b8859edbca",
              "name": "search_query",
              "type": "string",
              "value": "Google Search for Top SEO strategies for e-commerce in 2025"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "8234accd-fa05-4795-96ef-99a158e673ff",
      "name": "Summarize the content",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        448,
        -464
      ],
      "parameters": {
        "text": "=Summarize the following content  {{ $json.output }}.\n\nOutput just the summary. Do not provide your own suggestions or recommendations",
        "batching": {},
        "promptType": "define",
        "hasOutputParser": true
      },
      "retryOnFail": true,
      "typeVersion": 1.7
    },
    {
      "id": "fe9c7ae5-70e8-4854-8c4d-f2dee9956024",
      "name": "OpenAI Chat Model For Summarization",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        432,
        -224
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "2438f8b8-02cf-4811-a65f-7c4601f252bc",
      "name": "Keyword and Topic Analysis",
      "type": "@n8n/n8n-nodes-langchain.informationExtractor",
      "position": [
        464,
        -32
      ],
      "parameters": {
        "text": "=Perform Keyword and Topic Analysis of the following  {{ $json.output }}",
        "options": {},
        "schemaType": "manual",
        "inputSchema": "{\n  \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n  \"title\": \"KeywordTopicAnalysis\",\n  \"type\": \"object\",\n  \"properties\": {\n    \"query\": {\n      \"type\": \"string\",\n      \"description\": \"The original search query or keyword used in the SERP analysis.\"\n    },\n    \"primary_keywords\": {\n      \"type\": \"array\",\n      \"description\": \"List of primary focus keywords extracted from the analyzed content or SERP data.\",\n      \"items\": { \"type\": \"string\" }\n    },\n    \"secondary_keywords\": {\n      \"type\": \"array\",\n      \"description\": \"Related or supporting keywords derived from semantic clustering or co-occurrence.\",\n      \"items\": { \"type\": \"string\" }\n    },\n    \"keyword_metrics\": {\n      \"type\": \"array\",\n      \"description\": \"SEO metrics for each keyword, including difficulty and search volume.\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"keyword\": { \"type\": \"string\" },\n          \"search_volume\": { \"type\": \"integer\" },\n          \"competition_score\": { \"type\": \"number\" },\n          \"difficulty_score\": { \"type\": \"number\" },\n          \"trend\": { \"type\": \"string\", \"enum\": [\"rising\", \"falling\", \"steady\"] }\n        },\n        \"required\": [\"keyword\"]\n      }\n    },\n    \"focus_topics\": {\n      \"type\": \"array\",\n      \"description\": \"List of main content themes or topics derived from the SERP results or web pages.\",\n      \"items\": { \"type\": \"string\" }\n    },\n    \"topic_clusters\": {\n      \"type\": \"array\",\n      \"description\": \"Groups of semantically related keywords and topics.\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"cluster_name\": { \"type\": \"string\" },\n          \"related_keywords\": { \"type\": \"array\", \"items\": { \"type\": \"string\" } },\n          \"search_intent\": {\n            \"type\": \"string\",\n            \"enum\": [\"informational\", \"navigational\", \"transactional\", \"commercial\"]\n          }\n        },\n        \"required\": [\"cluster_name\", \"related_keywords\"]\n      }\n    },\n    \"seo_strength_score\": {\n      \"type\": \"integer\",\n      \"description\": \"Overall SEO opportunity score (0\u2013100).\"\n    },\n    \"content_gap_summary\": {\n      \"type\": \"string\",\n      \"description\": \"Summary describing missing topics or keyword opportunities in current content.\"\n    },\n    \"competitor_insights\": {\n      \"type\": \"array\",\n      \"description\": \"Optional data about competitors ranking for the analyzed keyword(s).\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"domain\": { \"type\": \"string\" },\n          \"ranking_position\": { \"type\": \"integer\" },\n          \"page_title\": { \"type\": \"string\" },\n          \"content_type\": { \"type\": \"string\" },\n          \"keyword_overlap\": { \"type\": \"number\" }\n        },\n        \"required\": [\"domain\", \"ranking_position\"]\n      }\n    },\n    \"ai_summary\": {\n      \"type\": \"string\",\n      \"description\": \"GPT-generated summary of the keyword and topic insights.\"\n    },\n    \"timestamp\": {\n      \"type\": \"string\",\n      \"format\": \"date-time\",\n      \"description\": \"Timestamp when the analysis was performed.\"\n    }\n  },\n  \"required\": [\"query\", \"primary_keywords\", \"focus_topics\", \"seo_strength_score\"]\n}\n"
      },
      "typeVersion": 1.2
    },
    {
      "id": "c4b13e07-1fa9-4d33-9140-14375f1e5c6b",
      "name": "OpenAI Chat Model for Keyword and Topic Analysis",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        464,
        144
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "27bcba40-fa09-4561-8a79-67af2e479e16",
      "name": "SEO Analyst",
      "type": "@n8n/n8n-nodes-langchain.informationExtractor",
      "position": [
        432,
        -960
      ],
      "parameters": {
        "text": "=Analyze the following SERP results for competitor insights and keyword opportunities:\\n\\n {{ $json.output }}",
        "options": {
          "systemPromptTemplate": "You are an SEO analyst. Extract primary keywords, competitor names, content tone, and summarize SEO strength from SERP data. "
        },
        "schemaType": "manual",
        "inputSchema": "{\n  \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n  \"title\": \"CompetitorInsightsAndKeywordOpportunities\",\n  \"type\": \"object\",\n  \"description\": \"Structured output for analyzing SERP results to extract competitor insights, keyword opportunities, and SEO metrics.\",\n  \"properties\": {\n    \"query\": {\n      \"type\": \"string\",\n      \"description\": \"The search query or topic analyzed in the SERP.\"\n    },\n    \"analyzed_date\": {\n      \"type\": \"string\",\n      \"format\": \"date-time\",\n      \"description\": \"Timestamp when the analysis was performed.\"\n    },\n    \"competitors\": {\n      \"type\": \"array\",\n      \"description\": \"List of main competitors or domains identified in the SERP results.\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"domain\": { \"type\": \"string\", \"description\": \"Competitor domain or brand name.\" },\n          \"page_title\": { \"type\": \"string\", \"description\": \"Title of the competitor\u2019s ranking page.\" },\n          \"ranking_position\": { \"type\": \"integer\", \"description\": \"SERP position for this result.\" },\n          \"snippet\": { \"type\": \"string\", \"description\": \"Short description or meta snippet from the SERP.\" },\n          \"content_type\": {\n            \"type\": \"string\",\n            \"enum\": [\"blog\", \"product_page\", \"landing_page\", \"news\", \"other\"],\n            \"description\": \"Type of content represented by the competitor page.\"\n          },\n          \"estimated_traffic_share\": {\n            \"type\": \"number\",\n            \"minimum\": 0,\n            \"maximum\": 100,\n            \"description\": \"Estimated share of search traffic (%) for this result.\"\n          },\n          \"keyword_overlap\": {\n            \"type\": \"number\",\n            \"minimum\": 0,\n            \"maximum\": 1,\n            \"description\": \"Proportion of shared keywords with the target domain (0\u20131 scale).\"\n          },\n          \"strengths\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" },\n            \"description\": \"SEO strengths or advantages identified for this competitor.\"\n          },\n          \"weaknesses\": {\n            \"type\": \"array\",\n            \"items\": { \"type\": \"string\" },\n            \"description\": \"Content or optimization weaknesses detected.\"\n          }\n        },\n        \"required\": [\"domain\", \"ranking_position\"]\n      }\n    },\n    \"keyword_opportunities\": {\n      \"type\": \"array\",\n      \"description\": \"List of new or underutilized keywords identified from the SERP analysis.\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"keyword\": { \"type\": \"string\" },\n          \"search_volume\": { \"type\": \"integer\", \"description\": \"Estimated monthly search volume.\" },\n          \"competition_score\": { \"type\": \"number\", \"description\": \"Keyword competition (0\u20131 scale).\" },\n          \"difficulty_score\": { \"type\": \"number\", \"description\": \"Keyword difficulty (0\u2013100 scale).\" },\n          \"intent\": {\n            \"type\": \"string\",\n            \"enum\": [\"informational\", \"navigational\", \"transactional\", \"commercial\"],\n            \"description\": \"User search intent.\"\n          },\n          \"relevance_score\": {\n            \"type\": \"number\",\n            \"minimum\": 0,\n            \"maximum\": 1,\n            \"description\": \"Relevance to the analyzed query (0\u20131 scale).\"\n          }\n        },\n        \"required\": [\"keyword\"]\n      }\n    },\n    \"topic_clusters\": {\n      \"type\": \"array\",\n      \"description\": \"Clusters of semantically related topics derived from the SERP.\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"cluster_name\": { \"type\": \"string\" },\n          \"related_keywords\": { \"type\": \"array\", \"items\": { \"type\": \"string\" } },\n          \"dominant_competitor\": { \"type\": \"string\", \"description\": \"Competitor leading in this topic cluster.\" }\n        },\n        \"required\": [\"cluster_name\", \"related_keywords\"]\n      }\n    },\n    \"content_gap_analysis\": {\n      \"type\": \"object\",\n      \"description\": \"Summary of missing or underrepresented topics in the current content compared to competitors.\",\n      \"properties\": {\n        \"gaps_identified\": { \"type\": \"array\", \"items\": { \"type\": \"string\" } },\n        \"recommendations\": { \"type\": \"array\", \"items\": { \"type\": \"string\" } }\n      }\n    },\n    \"seo_strength_score\": {\n      \"type\": \"integer\",\n      \"minimum\": 0,\n      \"maximum\": 100,\n      \"description\": \"Overall SEO opportunity score (0\u2013100) based on keyword difficulty, gap size, and competitor weaknesses.\"\n    },\n    \"ai_summary\": {\n      \"type\": \"string\",\n      \"description\": \"GPT-generated executive summary of the key findings, keyword opportunities, and competitor insights.\"\n    }\n  },\n  \"required\": [\"query\", \"competitors\", \"keyword_opportunities\", \"seo_strength_score\", \"ai_summary\"]\n}\n"
      },
      "typeVersion": 1.2
    },
    {
      "id": "b5cac579-1031-488c-9caa-75af3c14250e",
      "name": "OpenAI Chat Model for SEO Analyst",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        432,
        -784
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "ccae56d4-2d58-4b87-bc57-e24857716860",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        640,
        -224
      ],
      "parameters": {
        "schemaType": "manual",
        "inputSchema": "{\n\t\"type\": \"object\",\n\t\"properties\": {\"comprehensive_summary\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n        \"abstract_summary\": {\n\t\t\t\"type\": \"string\"\n\t\t}\n    }\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "934a59b1-7061-4834-8b8e-7a37ebecf43d",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -640,
        -384
      ],
      "parameters": {
        "color": 6,
        "width": 944,
        "height": 480,
        "content": "## SERP AI Agent\n\nPerforms the SERP search via Thordata SERP API\n"
      },
      "typeVersion": 1
    },
    {
      "id": "3941d4f9-83e0-4bcb-87a4-311b1fe9a077",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        336,
        -592
      ],
      "parameters": {
        "color": 5,
        "width": 512,
        "height": 896,
        "content": "## Data Enrichment\n\nPerform Comprehensive and Abstract Summaries. Also performs the Keyword and Topic analysis of the Agent Output content."
      },
      "typeVersion": 1
    },
    {
      "id": "f9919d39-0cd5-489f-ad16-4baff0a648ae",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        336,
        -1072
      ],
      "parameters": {
        "color": 4,
        "width": 512,
        "height": 448,
        "content": "## SEO Analyst\nAnalysis the following SERP results for competitor insights and keyword opportunities\n"
      },
      "typeVersion": 1
    },
    {
      "id": "a3060af6-1f26-42ab-a69e-4be7a7dc4e01",
      "name": "Append or update row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1152,
        -368
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [
            "seo"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/151xx1ClNDoQ2g_SANQJmdN4EJroWWEsPM658dFWLMTQ/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "151xx1ClNDoQ2g_SANQJmdN4EJroWWEsPM658dFWLMTQ",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/151xx1ClNDoQ2g_SANQJmdN4EJroWWEsPM658dFWLMTQ/edit?usp=drivesdk",
          "cachedResultName": "Competitor Intelligence Agent"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "d058cb5c-ee3a-4b50-be25-8562a1be4e68",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        944,
        -384
      ],
      "parameters": {
        "numberInputs": 3
      },
      "typeVersion": 3.2
    },
    {
      "id": "b0286661-257a-43e7-ae77-3ddba37af384",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        896,
        -560
      ],
      "parameters": {
        "color": 3,
        "width": 480,
        "height": 496,
        "content": "## Export Data Handling\n\nExports the output to the Google Spreedsheet"
      },
      "typeVersion": 1
    },
    {
      "id": "32d8e326-65b6-4705-9a01-a8d6c35755c6",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1088,
        -944
      ],
      "parameters": {
        "color": 7,
        "width": 992,
        "height": 528,
        "content": "## **Purpose:**\n  Automate SERP analysis to extract competitor insights, keyword gaps, and SEO opportunities using Thordata for search data and OpenAI for structured analysis.\n\n* **Workflow Steps:**\n\n  1. **Trigger (Schedule or Manual):** Starts the weekly SERP analysis.\n  2. **AI Agent:** Performs the SERP search and retrieves top-ranking results.\n  3. **OpenAI Node:** Analyzes SERP data with GPT and outputs results in the defined JSON schema.\n  4. **Google Sheets Node:** Sends summarized insights or logs data for historical tracking.\n\n* **Key Outputs:**\n\n  * Competitor domains, ranking positions, and SEO strengths/weaknesses.\n  * Keyword opportunities with search volume, difficulty, and intent.\n  * Topic clusters and content gap recommendations.\n  * Overall SEO Strength Score (0\u2013100).\n  * AI-generated summary for quick reporting.\n\n* **Use Case:**\n  Ideal for SEO teams, marketers, and agencies to monitor competitors, discover new keyword opportunities, and optimize content strategies weekly.\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "a4d805de-2a7e-466a-bdce-26a1bc60e212",
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Append or update row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Summarize the content",
            "type": "main",
            "index": 0
          },
          {
            "node": "Keyword and Topic Analysis",
            "type": "main",
            "index": 0
          },
          {
            "node": "SEO Analyst",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Bing Search": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "SEO Analyst": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Search": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Yandex Search": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "DuckDuckGo Search": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Set the Input Fields": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Summarize the content": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Summarize the content",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Keyword and Topic Analysis": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "OpenAI Chat Model for SEO Analyst": {
      "ai_languageModel": [
        [
          {
            "node": "SEO Analyst",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model For Summarization": {
      "ai_languageModel": [
        [
          {
            "node": "Summarize the content",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "When clicking \u2018Execute workflow\u2019": {
      "main": [
        [
          {
            "node": "Set the Input Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model for Keyword and Topic Analysis": {
      "ai_languageModel": [
        [
          {
            "node": "Keyword and Topic Analysis",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    }
  }
}