{
  "name": "Ai-powered local event finder with multi-tool search",
  "nodes": [
    {
      "id": "3896a94e-9d40-4bb7-a333-cce2bae94e33",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        -40,
        1560
      ]
    },
    {
      "id": "15dba0b1-3f9b-4ed4-9efe-f8be50da710b",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        820,
        1620
      ]
    },
    {
      "id": "83c73d4e-f4ae-4618-9ab4-0bcc05339395",
      "name": "brave_web_search",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        1160,
        1300
      ]
    },
    {
      "id": "8ba5272c-d95b-48e3-b48d-0f6bedcdad5c",
      "name": "brave_local_search",
      "type": "n8n-nodes-mcp.mcpClientTool",
      "position": [
        1720,
        1300
      ]
    },
    {
      "id": "9be2f212-43d9-4e31-a090-3b3e44195291",
      "name": "find_events",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        -60,
        320
      ]
    },
    {
      "id": "c1becac0-c6a1-4a2f-be3b-c69b7cb5a69a",
      "name": "even_finder_workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        -500,
        1180
      ]
    },
    {
      "id": "fbec2433-db9a-43db-b143-551c624ee085",
      "name": "event_finder_agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        240,
        1180
      ]
    },
    {
      "id": "2cb94f37-21fc-48d7-8661-3d3270bae356",
      "name": "local_event_finder",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -220,
        -80
      ]
    },
    {
      "id": "a8afc19d-8394-4e4d-bd6a-047e665b5a68",
      "name": "google_gemini_event_search",
      "type": "n8n-nodes-gemini-search.geminiSearchToolTool",
      "position": [
        2300,
        1300
      ]
    },
    {
      "id": "5f733091-c9b0-4dd8-90f0-9eee8af122dd",
      "name": "jina_ai_web_page_scraper",
      "type": "n8n-nodes-base.jinaAiTool",
      "position": [
        2880,
        1300
      ]
    },
    {
      "id": "48198d3f-6c86-4b95-a0f2-a04eac3d8c36",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        860,
        -900
      ],
      "parameters": {
        "width": 760,
        "height": 320,
        "content": "## 📞 MCP Client Configuration\n\nExternal clients (like other n8n workflows, Roo Code, or Cline) configure this agent as a tool.\n\n**Example Client Tool Configuration (e.g., for Roo Code/Cline):**\n```jso"
      }
    },
    {
      "id": "50d4814b-eee3-46be-bdc5-2d730872b34d",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -860,
        -320
      ],
      "parameters": {
        "width": 840,
        "height": 320,
        "content": "## 📡 local_event_finder (MCP Server Trigger)\n\n🚪 **Entry Point for External Calls**\n*   **Purpose:** Receives requests from external clients to use the \"Local Event Finder\" agent.\n*   **Function:** Lis"
      }
    },
    {
      "id": "71e54414-aa7c-4cab-b537-257ff762108f",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -860,
        60
      ],
      "parameters": {
        "width": 840,
        "height": 320,
        "content": "## ➡️ find_events (Tool Workflow Node)\n\n📞 **Invokes the Agent Logic**\n*   **Purpose:** This node acts as the bridge, formally calling the agent's core logic which, in this combined workflow, is trigge"
      }
    },
    {
      "id": "e6b00332-ce68-4fce-8238-52e19c746445",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        860,
        -520
      ],
      "parameters": {
        "width": 760,
        "height": 320,
        "content": "## 🗺️ Main MCP Server Workflow Overview (Conceptual Area)\n\n**Agent Name:** Local Event Finder\n*   **Gateway Function:** This section of the workflow acts as an MCP (Multi-Capability Peer) Server, maki"
      }
    },
    {
      "id": "b87c9502-1805-435f-a922-e932dcdc11e7",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1680,
        -1200
      ],
      "parameters": {
        "width": 740,
        "height": 240,
        "content": "## 📄 Workflow Information\n\n*   **Workflow Name:** Local Event Finder (acts as both MCP Server & Agent Logic)\n*   **Version:** 1.0.0\n*   **Last Updated:** 2025-06-09\n*   **👤 Author:** Jeremy Dawes, Jez"
      }
    },
    {
      "id": "8974efe8-c3d2-43f4-a340-ee346ce08548",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2480,
        -80
      ],
      "parameters": {
        "width": 740,
        "height": 420,
        "content": "## ✅ TODO / Future Enhancements (Main Area)\n\n*   [ ] Add more robust input validation.\n*   [ ] Implement more sophisticated error handling for MCP calls.\n*   [ ] Add rate limiting or API key authentic"
      }
    },
    {
      "id": "f2b540c4-faff-41cc-be53-d0c885a52946",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -740,
        720
      ],
      "parameters": {
        "width": 640,
        "height": 520,
        "content": "## 🏁 Sub-Workflow Start: Local Event Finder Logic\n(Node: `even_finder_workflow` - Execute Workflow Trigger)\n\n🎬 **Kicks off the Agent's Thinking Process**\n*   **Purpose:** This is the internal entry po"
      }
    },
    {
      "id": "3b2922cd-8fbb-4f1f-95e9-4a48dc07718a",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        20,
        720
      ],
      "parameters": {
        "width": 740,
        "height": 520,
        "content": "## 🧠 event_finder_agent (Core Logic)\n\n🤖 **The Brain of the Operation**\n*   **Purpose:** Processes the user's request to find events using available tools and LLM reasoning.\n*   **Model:** `models/gemi"
      }
    },
    {
      "id": "dbf29f77-6557-42aa-831b-3ad5590bb301",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        260,
        1660
      ],
      "parameters": {
        "width": 620,
        "height": 300,
        "content": "## 💾 Agent Memory (Simple Memory)\n\n🧠 **Short-Term Recall**\n*   **Purpose:** Provides conversation memory to the `event_finder_agent`.\n*   **Type:** Window Buffer Memory (keeps a limited history of int"
      }
    },
    {
      "id": "5d5143db-87d2-449c-9460-32f7d465410b",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        960,
        720
      ],
      "parameters": {
        "width": 460,
        "height": 620,
        "content": "## 🛠️ Tool: brave_web_search (MCP Client)\n\n🌐 **Broad Web Searching**\n*   **Connection:** Uses `smithery brave search` credential.\n*   **Purpose of External Tool:** Performs general web searches via Br"
      }
    },
    {
      "id": "d943edef-7382-4b1b-b848-c923c99cc72b",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1540,
        720
      ],
      "parameters": {
        "width": 460,
        "height": 620,
        "content": "## 🛠️ Tool: brave_local_search (MCP Client)\n\n📍 **Local Area Searching**\n*   **Connection:** Uses `smithery brave search` credential.\n*   **Purpose of External Tool:** Finds local events/venues using B"
      }
    },
    {
      "id": "bde5341b-3a99-48c9-a43d-9ebcc5172f14",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2120,
        720
      ],
      "parameters": {
        "width": 460,
        "height": 620,
        "content": "## 🛠️ Tool: google_gemini_event_search (Gemini Search Tool)\n\n✨ **Advanced Event Searching**\n*   **Connection:** Uses `Gemini Credentials account` credential.\n*   **Purpose of External Tool:** Leverage"
      }
    },
    {
      "id": "a7c340dd-efac-415c-a922-f3ef457cb072",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2700,
        720
      ],
      "parameters": {
        "width": 460,
        "height": 620,
        "content": "## 🛠️ Tool: jina_ai_web_page_scraper (Jina AI Tool)\n\n📄 **Detailed Content Extraction**\n*   **Connection:** Uses `Jina AI account` credential.\n*   **Purpose of External Tool:** Scrapes and summarizes c"
      }
    },
    {
      "id": "2f1944ad-f803-4712-94a1-5ec902e7def4",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1680,
        -900
      ],
      "parameters": {
        "width": 740,
        "height": 360,
        "content": "## 💡 n8n AI Agent as an MCP Service (This Workflow's Pattern)\n\n**This workflow demonstrates a self-contained n8n AI Agent exposed as an MCP Service.**\n*   **What this \"Agent Logic\" part does:** Implem"
      }
    },
    {
      "id": "934c840a-f8b6-416a-a5a8-68b724f27687",
      "name": "Sticky Note14",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1680,
        -500
      ],
      "parameters": {
        "width": 740,
        "height": 440,
        "content": "## 🔑 External Service Credentials (Agent Logic Area)\n\nList of credentials used by tools within this agent logic:\n\n1.  **Tool Nodes:** `brave_web_search`, `brave_local_search`\n    *   **n8n Credential "
      }
    },
    {
      "id": "96746f76-936e-467b-94f7-7b2fe32728a9",
      "name": "Sticky Note15",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -720,
        1600
      ],
      "parameters": {
        "width": 740,
        "height": 220,
        "content": "## ⚙️ Key LLM & Agent Settings (Agent Logic Area)\n\n*   **LLM Model:** `models/gemini-2.5-flash-preview-05-20` (in `Google Gemini Chat Model` node)\n*   **System Prompt Location:** Within the `event_fin"
      }
    },
    {
      "id": "338692d0-096a-42b8-a7bc-4ee897b251a2",
      "name": "Sticky Note16",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2480,
        -900
      ],
      "parameters": {
        "width": 740,
        "height": 360,
        "content": "## 🎯 Sub-Workflow: Local Event Finder Core Logic (Agent Logic Area)\n\n*   **Purpose:** This section of the workflow is dedicated to understanding the user's event request, utilizing search and scraping"
      }
    },
    {
      "id": "7e276d1e-6746-4133-8dcd-cf886c0d3199",
      "name": "Sticky Note17",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2480,
        -500
      ],
      "parameters": {
        "width": 740,
        "height": 360,
        "content": "## 🛠️ Troubleshooting Tips (Agent Logic Area)\n\n*   **Check Agent Logs:** Examine the execution logs of the `event_finder_agent` node for tool call details, LLM interactions, and errors.\n*   **Test MCP"
      }
    }
  ],
  "connections": {
    "find_events": {
      "ai_tool": [
        [
          {
            "node": "local_event_finder",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "event_finder_agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "brave_web_search": {
      "ai_tool": [
        [
          {
            "node": "event_finder_agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "brave_local_search": {
      "ai_tool": [
        [
          {
            "node": "event_finder_agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "even_finder_workflow": {
      "main": [
        [
          {
            "node": "event_finder_agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "event_finder_agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "jina_ai_web_page_scraper": {
      "ai_tool": [
        [
          {
            "node": "event_finder_agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "google_gemini_event_search": {
      "ai_tool": [
        [
          {
            "node": "event_finder_agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}