{
  "name": "Build your own Youtube MCP server",
  "nodes": [
    {
      "id": "aef123fd-3481-4708-ae85-684529e4f05f",
      "name": "When Executed by Another Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        340,
        300
      ]
    },
    {
      "id": "d77e695b-8340-4715-9862-b6428d7d12e4",
      "name": "Operation",
      "type": "n8n-nodes-base.switch",
      "position": [
        580,
        300
      ]
    },
    {
      "id": "b2d3e630-9664-481e-b250-9d5a3ff065ee",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -440,
        -100
      ],
      "parameters": {
        "width": 680,
        "height": 660,
        "content": "## 1. Set up an MCP Server Trigger\n[Read more about the MCP Server Trigger](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.mcptrigger)"
      }
    },
    {
      "id": "6facfbdf-bc66-4652-8ae6-a1513962fe2e",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        260,
        -100
      ],
      "parameters": {
        "width": 1240,
        "height": 820,
        "content": "## 2. [APIFY.com](https://www.apify.com?fpr=414q6) for Easy Youtube Search and Transcripts\n[Sign up for Apify.com using 20JIMLEUK for 20% discount](https://www.apify.com?fpr=414q6)\n\nI've used Apify's "
      }
    },
    {
      "id": "3473a800-6bdc-412d-82f2-aa5befd2dfe4",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -440,
        -220
      ],
      "parameters": {
        "width": 380,
        "height": 100,
        "content": "### Always Authenticate Your Server!\nBefore going to production, it's always advised to enable authentication on your MCP server trigger."
      }
    },
    {
      "id": "adddb2c3-5823-426e-bd10-4ae2f3ed0f8c",
      "name": "Youtube Transcripts",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        0,
        280
      ]
    },
    {
      "id": "bce90f0f-a0d8-4e43-98f2-70426b28759d",
      "name": "Youtube Search",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        -280,
        280
      ]
    },
    {
      "id": "42cb7bd5-bdb4-40d4-9f69-d49fe066aaa2",
      "name": "Apify Youtube Search",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        860,
        100
      ]
    },
    {
      "id": "ea57908b-f927-466c-86ff-2265a5ee001a",
      "name": "Simplify Search Results",
      "type": "n8n-nodes-base.set",
      "position": [
        1060,
        100
      ]
    },
    {
      "id": "aed4a7c8-f41e-4e14-90c9-4e298465e7f4",
      "name": "Apify Youtube Transcripts",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        860,
        300
      ]
    },
    {
      "id": "a73c672c-c36a-4ac0-bb0f-a87ed4dd9329",
      "name": "Simplify Transcript Results",
      "type": "n8n-nodes-base.set",
      "position": [
        1060,
        300
      ]
    },
    {
      "id": "c62ef6f9-6a81-4f00-aa68-433e3378e6ff",
      "name": "Aggregate Search Results",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1260,
        100
      ]
    },
    {
      "id": "53f6c967-bca1-4322-9939-7e0078ef99ed",
      "name": "Aggregate Transcript Results",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1260,
        300
      ]
    },
    {
      "id": "04590cf0-38e5-4113-abb8-14c141524b1c",
      "name": "Simplify Usage Metrics",
      "type": "n8n-nodes-base.set",
      "position": [
        1260,
        500
      ]
    },
    {
      "id": "dee72606-aeea-41bf-97e3-037afbd03efc",
      "name": "Get Usage Limits",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1060,
        500
      ]
    },
    {
      "id": "49715bf8-56a9-41ee-a756-eb05ea4f1e7d",
      "name": "Usage Report",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        -140,
        400
      ]
    },
    {
      "id": "737eca46-cb1f-443f-8243-33d429f0bfe3",
      "name": "Get Usage Metrics",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        860,
        500
      ]
    },
    {
      "id": "90da2c29-a1fc-4772-a271-602cdd14b679",
      "name": "Apify Youtube MCP Server",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -300,
        60
      ]
    },
    {
      "id": "b427a01f-099d-43f8-8b8d-04186a5d330e",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        -460
      ],
      "parameters": {
        "width": 480,
        "height": 1020,
        "content": "## Try It Out!\n### This n8n demonstrates how to build a simple Youtube Search MCP server to look up videos on Youtube and download their transcripts for research purposes.\n\n### How it works\n* A MCP se"
      }
    },
    {
      "id": "e11a8af0-0a53-4b9b-a499-4bbd956858f8",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        260,
        -360
      ],
      "parameters": {
        "width": 280,
        "height": 240,
        "content": "[![](https://d2gdx5nv84sdx2.cloudfront.net/uploads/35gj8m4w/marketing_asset/banner/13734/Large_rectangle_336x280_Light__1_.png)](https://www.apify.com?fpr=414q6)"
      }
    }
  ],
  "connections": {
    "Operation": {
      "main": [
        [
          {
            "node": "Apify Youtube Search",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Apify Youtube Transcripts",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Get Usage Metrics",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Usage Report": {
      "ai_tool": [
        [
          {
            "node": "Apify Youtube MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Youtube Search": {
      "ai_tool": [
        [
          {
            "node": "Apify Youtube MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Get Usage Limits": {
      "main": [
        [
          {
            "node": "Simplify Usage Metrics",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Usage Metrics": {
      "main": [
        [
          {
            "node": "Get Usage Limits",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Youtube Transcripts": {
      "ai_tool": [
        [
          {
            "node": "Apify Youtube MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Apify Youtube Search": {
      "main": [
        [
          {
            "node": "Simplify Search Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Simplify Search Results": {
      "main": [
        [
          {
            "node": "Aggregate Search Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Apify Youtube Transcripts": {
      "main": [
        [
          {
            "node": "Simplify Transcript Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Simplify Transcript Results": {
      "main": [
        [
          {
            "node": "Aggregate Transcript Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Operation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}