{"workflow":{"id":14008,"name":"OpenClaw Clone 🦞: Expandable Personal Telegram AI Agent Template","views":2819,"recentViews":29,"totalViews":2819,"createdAt":"2026-03-11T19:40:02.657Z","description":"This workflow implements an **advanced AI automation agent (OpenClaw Agent)** that interacts with users through Telegram and integrates multiple AI models, external tools, and cloud services to automate complex tasks.\n\nI've described my basic idea in [this video](https://www.youtube.com/watch?v=DCo_HsLQ1aY).\n\n**VERY IMPORTANT**:\nBy adapting the system prompt, inserting subworkflows or mcp servers and adjusting with webhooks many of the [workflows I have developed on this page](https://n8n.io/creators/n3witalia/) it is possible to potentially extend the template infinitely.\n\n\nThe agent can autonomously decide which tools to use to complete the request. It has access to multiple integrations, including:\n\n* Gmail (read, send, reply, draft emails)\n* Google Calendar (create, delete, check availability)\n* Google Drive, Docs, Sheets, and Slides\n* Web search and web scraping tools\n* RAG (Retrieval-Augmented Generation) using a vector database [Here how set up](https://n8n.io/workflows/7647)\n* Image and video analysis tools\n* Mathematical calculator tools\n* Custom sub-workflows and MCP integrations\n\nThe system also includes **persistent chat memory stored in PostgreSQL**, allowing the AI to remember previous interactions and maintain conversation context.\n\nFinally, the workflow generates a response and sends it back to the user via Telegram. If the input was voice-based, the response can also be converted into **audio and returned as a voice message**.\n\nAn **escalation mechanism** allows the system to transfer the conversation to a human operator when needed.\n\n---\n\n### Key Advantages\n\n#### 1. ✅ Multimodal Interaction\n\nThe workflow supports **text, voice, and image inputs**, allowing users to interact with the system naturally.\n\n#### 2. ✅ AI-Powered Automation\n\nThe integrated AI agent can autonomously decide which tools to use to solve tasks, reducing manual intervention and enabling intelligent automation.\n\n#### 3.✅  Deep Integration with Google Workspace\n\nThe workflow can manage emails, documents, spreadsheets, presentations, and calendar events directly through AI commands.\n\n#### 4. ✅ Retrieval-Augmented Knowledge (RAG)\n\nThe system can access external knowledge sources through a vector database, improving response accuracy and enabling knowledge-based answers.\n\n#### 5. ✅ Persistent Memory\n\nConversation history is stored in PostgreSQL, allowing the agent to maintain context and provide more relevant responses over time.\n\n#### 6. ✅ Web Intelligence\n\nBuilt-in web search and scraping capabilities allow the agent to gather real-time information from the internet.\n\n#### 7. ✅ Voice Response Capability\n\nThe system can generate audio responses, creating a more natural conversational experience.\n\n#### 8. ✅ Modular and Scalable Architecture\n\nThe workflow is highly modular, allowing new tools, agents, and services to be added easily.\n\n#### 9. ✅ Human Escalation\n\nWhen automation is not sufficient, the system can escalate the conversation to a human operator.\n\n#### 10. ✅ Fully Automated Digital Assistant\n\nOverall, the workflow acts as a **fully autonomous AI assistant capable of performing complex operational tasks across multiple platforms.**\n\n\n\n---\n\n### How it works\n\nThis workflow is a comprehensive Telegram-based AI orchestrator that simulates an OpenClaw-style multi-agent architecture. When a user sends a message to the Telegram bot, the workflow:\n\n1. **Receives and authorizes** the message through a Telegram trigger, checking if the user ID matches an authorized user (configured in the Code node)\n\n2. **Routes different content types** using a Switch node that detects whether the incoming message contains text, voice, or images:\n   - **Text messages**: Directly passed to the orchestrator\n   - **Voice messages**: Downloaded and transcribed using OpenAI's audio transcription\n   - **Images**: Downloaded, uploaded to an FTP server, and transformed into a URL for processing\n\n3. **Feeds the processed input** (text, transcribed voice, or image URL with caption) into the \"OpenClaw Agents\" node - an AI agent configured with Gemini as the language model and Postgres for chat memory\n\n4. **Orchestrates specialized sub-agents** through the main AI agent, which can delegate tasks to multiple tools:\n   - Research and web search (Perplexity AI)\n   - Web scraping (ScrapeGraphAI)\n   - Google services (Gmail, Drive, Docs, Sheets, Slides, Calendar)\n   - RAG (Qdrant vector store with Cohere reranker)\n   - Image/Video generation (via sub-workflow)\n   - Calculator\n   - Telegram communication tools\n\n5. **Handles response delivery** based on the original message type:\n   - If the original message was voice, the workflow generates an audio response using OpenAI TTS and sends it back as audio\n   - Otherwise, sends a text response via Telegram\n\n6. **Includes escalation capabilities** through a human-in-the-loop tool for situations requiring human intervention\n\n---\n\n### Set up steps\n\n1. **Configure Telegram Bot**\n   - Create a Telegram bot via BotFather to get a bot token\n   - Set up Telegram credentials in n8n\n   - Replace `XXX` in the Code node with your authorized Telegram user ID\n\n2. **Set up API Keys and Credentials**\n   - **OpenAI**: API key for audio transcription and text-to-speech\n   - **Google Gemini**: API key for the main language model\n   - **Google Cloud**: OAuth2 credentials for all Google services (Gmail, Drive, Calendar, Docs, Sheets, Slides)\n   - **Perplexity AI**: API key for research and web search\n   - **ScrapeGraphAI**: API key for web scraping\n   - **Cohere**: API key for reranker functionality\n   - **PostgreSQL**: Database connection for chat memory\n\n3. **Configure External Services**\n   - **Qdrant**: Set up vector database for RAG functionality\n   - **FTP Server**: Configure FTP credentials and path (replace `/XXX/` in Upload image node with actual path and domain in Set Image Url node)\n\n4. **Configure Webhooks and Endpoints**\n   - Set the Telegram webhook URL to point to your n8n instance\n   - The workflow includes multiple MCP endpoints that need proper configuration\n\n5. **Review and Adjust Parameters**\n   - Check all nodes with placeholder values (marked with `XXX`)\n   - Verify language settings (Italian is set for transcription)\n   - Review the system prompt in the OpenClaw Agents node and customize if needed\n   - Ensure all tool descriptions match your use case\n\n6. **Test and Activate**\n   - Run the workflow in inactive mode first to test with sample inputs\n   - Check that all connections between nodes are correct\n   - Activate the workflow when everything is verified\n\n---\n\n👉 [Subscribe to my new **YouTube channel**](https://youtube.com/@n3witalia). Here I’ll share videos and Shorts with practical tutorials and **FREE templates for n8n**.\n\n[![image](https://n3wstorage.b-cdn.net/n3witalia/youtube-n8n-cover.jpg)](https://youtube.com/@n3witalia)\n\n\n---\n\n### **Need help customizing?**  \n[Contact me](mailto:info@n3w.it) for consulting and support or add me on [Linkedin](https://www.linkedin.com/in/davideboizza/).","workflow":{"id":"Vgb2eeIEZ6UVBgSs","meta":{"instanceId":"a4bfc93e975ca233ac45ed7c9227d84cf5a2329310525917adaf3312e10d5462","templateCredsSetupCompleted":true},"name":"OpenClaw n8n Agent","tags":[],"nodes":[{"id":"9aff7c4d-e9b9-4d23-9c27-1c6cc29ac355","name":"Code","type":"n8n-nodes-base.code","position":[-240,1280],"parameters":{"jsCode":"if ($input.first().json.message.from.id !== XXX) { // Replace with your Telegram user ID\n    return { unauthorized: true };\n} else {\n    // Return the original data when authorized\n    return $input.all();\n}\n"},"typeVersion":2},{"id":"35ecd51a-6a17-4a4b-8268-6c68624367a3","name":"Get Message","type":"n8n-nodes-base.telegramTrigger","position":[-544,1280],"webhookId":"7914047e-f8bc-4315-a482-f787407c83ad","parameters":{"updates":["message"],"additionalFields":{}},"typeVersion":1.1},{"id":"c5d2318f-b0b0-4b1e-91d0-c099920bd528","name":"Send a text message","type":"n8n-nodes-base.telegram","position":[2432,864],"webhookId":"0c34fd33-0a7a-424e-b57b-9a45bb6f083d","parameters":{"text":"={{ $json.output }}","chatId":"={{ $('Get Message').item.json.message.from.id }}","additionalFields":{}},"typeVersion":1.2},{"id":"c8fb757e-7954-4a8f-862e-5958346e6b7a","name":"Get Text","type":"n8n-nodes-base.set","position":[720,1088],"parameters":{"options":{},"assignments":{"assignments":[{"id":"029f4e7e-b367-4aa9-863e-e372694940fb","name":"chatInput","type":"string","value":"={{ $json.message.text }}"},{"id":"398c1d7f-0c90-4af6-a414-d4d1968855b9","name":"sessionId","type":"number","value":"={{ $json.message.from.id }}"}]}},"typeVersion":3.4},{"id":"cb7af990-ca72-4167-9da0-63f3fb8ff7f9","name":"Switch2","type":"n8n-nodes-base.switch","position":[0,1264],"parameters":{"rules":{"values":[{"outputKey":"Text","conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"exists","singleValue":true},"leftValue":"={{ $json.message.text}}","rightValue":""}]},"renameOutput":true},{"outputKey":"Audio","conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"7b2cb4dc-dd9d-43b2-b4db-f0de858f46cc","operator":{"type":"string","operation":"exists","singleValue":true},"leftValue":"={{ $json.message.voice.file_id }}","rightValue":""}]},"renameOutput":true},{"outputKey":"Immagine","conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"98d80a35-3004-4bad-95b8-e87fc9270083","operator":{"type":"object","operation":"exists","singleValue":true},"leftValue":"={{ $json.message.photo[0] }}","rightValue":""}]},"renameOutput":true}]},"options":{}},"executeOnce":false,"typeVersion":3.2,"alwaysOutputData":false},{"id":"2468465b-020f-4e89-bafb-cc29e0583d07","name":"Get voice message","type":"n8n-nodes-base.telegram","position":[272,1280],"webhookId":"d971a56e-963a-452e-99dd-286653f432a9","parameters":{"fileId":"={{ $('Get Message').item.json.message.voice.file_id }}","resource":"file","additionalFields":{}},"typeVersion":1.2},{"id":"4299a579-f361-480e-a97a-01f11a52334b","name":"Transcribe recording","type":"@n8n/n8n-nodes-langchain.openAi","position":[496,1280],"parameters":{"options":{"language":"it"},"resource":"audio","operation":"transcribe"},"typeVersion":1.7},{"id":"39b99c3f-493a-48b7-921e-ec197d4e44ff","name":"Get image file","type":"n8n-nodes-base.telegram","position":[288,1520],"webhookId":"0b5ed937-7ee2-48e2-8a63-1937609680fc","parameters":{"fileId":"={{ $json.message.photo[2].file_id }}","resource":"file","additionalFields":{}},"typeVersion":1.2},{"id":"cf8e0a98-488b-4cf3-bd77-10457c49badf","name":"Upload image","type":"n8n-nodes-base.ftp","position":[512,1520],"parameters":{"path":"=/XXX/{{ $binary.data.fileName }}","options":{},"operation":"upload"},"typeVersion":1},{"id":"536bccef-f8c1-4377-b787-2ce3f1e09808","name":"Set Image Url","type":"n8n-nodes-base.set","position":[736,1520],"parameters":{"options":{},"assignments":{"assignments":[{"id":"29fbf21e-301d-4a1c-b6c9-723c9c03fb61","name":"image_url","type":"string","value":"=https://XXX/{{ $binary.data.fileName }}"},{"id":"272f6379-55fa-4d36-8da7-0ec1232606fd","name":"chatInput","type":"string","value":"={{ $('Get Message').item.json.message.caption || \"\"}}"},{"id":"aff4f5c4-fe02-4bb8-b923-9c91334124ba","name":"sessionId","type":"string","value":"={{ $('Get Message').item.json.message.from.id }}"}]}},"typeVersion":3.4},{"id":"6857b57c-68a6-43a0-a040-8d684bfcc0fc","name":"Get input text from voice","type":"n8n-nodes-base.set","position":[720,1280],"parameters":{"options":{},"assignments":{"assignments":[{"id":"029f4e7e-b367-4aa9-863e-e372694940fb","name":"chatInput","type":"string","value":"={{ $json.text }}"},{"id":"398c1d7f-0c90-4af6-a414-d4d1968855b9","name":"sessionId","type":"number","value":"={{ $('Get Message').item.json.message.from.id }}"}]}},"typeVersion":3.4},{"id":"3de555a1-4af4-4270-98f5-da051845290b","name":"Google Gemini Chat Model","type":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","position":[1200,1488],"parameters":{"options":{}},"typeVersion":1},{"id":"300752bd-1dfb-4cab-b4f3-cbb9b1d40269","name":"Postgres Chat Memory","type":"@n8n/n8n-nodes-langchain.memoryPostgresChat","position":[1392,1488],"parameters":{},"typeVersion":1.3},{"id":"ff6814ab-52f3-424f-802d-2cfdf3d11b3a","name":"Webhook","type":"n8n-nodes-base.webhook","position":[304,800],"webhookId":"56c7aeae-eb8a-4d2e-a149-dfe02b586d18","parameters":{"path":"56c7aeae-eb8a-4d2e-a149-dfe02b586d18","options":{}},"typeVersion":2.1},{"id":"a384f159-0790-43be-93d7-f56b174b3765","name":"Schedule Trigger","type":"n8n-nodes-base.scheduleTrigger","position":[288,560],"parameters":{"rule":{"interval":[{}]}},"typeVersion":1.3},{"id":"6fd754da-1d0f-4fce-9f7a-4b4921db36d6","name":"Get a message in Gmail","type":"n8n-nodes-base.gmailTool","position":[-512,2752],"webhookId":"94d96aef-c203-4a9b-948d-963a2f143868","parameters":{"messageId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', ``, 'string') }}","operation":"get"},"typeVersion":2.1},{"id":"c0712605-9864-44ab-bc9a-fb41c78f5015","name":"Send a message in Gmail","type":"n8n-nodes-base.gmailTool","position":[-336,2752],"webhookId":"11022cbf-4db4-4fb6-b2cc-213b1aabc7d7","parameters":{"sendTo":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To', ``, 'string') }}","message":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}","options":{},"subject":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}"},"typeVersion":2.1},{"id":"0138d005-83e8-432c-b9c6-dd6bc7d3769e","name":"Get many messages in Gmail","type":"n8n-nodes-base.gmailTool","position":[0,2752],"webhookId":"766ec83e-38e7-41f9-86e9-dc74581a07e6","parameters":{"simple":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Simplify', ``, 'boolean') }}","filters":{"q":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Search', ``, 'string') }}","receivedAfter":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Received_After', ``, 'string') }}","receivedBefore":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Received_Before', ``, 'string') }}"},"options":{"downloadAttachments":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Download_Attachments', ``, 'boolean') }}"},"operation":"getAll","returnAll":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}"},"typeVersion":2.1},{"id":"31978220-0742-4a98-a2fc-b9aba56a9074","name":"Reply to a message in Gmail","type":"n8n-nodes-base.gmailTool","position":[-176,2752],"webhookId":"09b28a3b-8944-4cc6-a2fd-a8163e013b4a","parameters":{"message":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}","options":{},"messageId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message_ID', ``, 'string') }}","operation":"reply"},"typeVersion":2.1},{"id":"08e6a4d5-63e4-48be-bfa2-c45f00f1a115","name":"Create a draft in Gmail","type":"n8n-nodes-base.gmailTool","position":[176,2752],"webhookId":"4cda1631-469d-4c82-ac9b-cb6bfcd68fa0","parameters":{"message":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}","options":{"sendTo":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To_Email', ``, 'string') }}","replyTo":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Send_Replies_To', ``, 'string') }}","threadId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Thread_ID', ``, 'string') }}"},"subject":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}","resource":"draft"},"typeVersion":2.1},{"id":"c8dfaea9-69db-480b-a45d-5deea94d8464","name":"MCP Gmail Trigger","type":"@n8n/n8n-nodes-langchain.mcpTrigger","position":[-272,2528],"webhookId":"63975752-0598-4992-9422-165a84c8798c","parameters":{"path":"63975752-0598-4992-9422-165a84c8798c"},"typeVersion":2},{"id":"8838423f-0e45-4c90-ba51-4f303fc47779","name":"MCP Calendar Trigger","type":"@n8n/n8n-nodes-langchain.mcpTrigger","position":[688,2528],"webhookId":"0f72eb90-2a1c-403e-98e1-901d76c2825c","parameters":{"path":"0f72eb90-2a1c-403e-98e1-901d76c2825c"},"typeVersion":2},{"id":"a29ceee3-c210-4212-81d1-9dfbe93ecef4","name":"Create an event in Google Calendar","type":"n8n-nodes-base.googleCalendarTool","position":[528,2736],"parameters":{"end":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}","start":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }}","calendar":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}","__regex":"(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"},"additionalFields":{}},"typeVersion":1.3},{"id":"44293600-bd90-41e3-a591-82ca359fcb1d","name":"Get many events in Google Calendar","type":"n8n-nodes-base.googleCalendarTool","position":[688,2736],"parameters":{"options":{},"timeMax":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}","timeMin":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}","calendar":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}","__regex":"(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"},"operation":"getAll","returnAll":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}"},"typeVersion":1.3},{"id":"0acf2e56-575f-4de2-8cd4-3f4f3d3cd15e","name":"Get an event in Google Calendar","type":"n8n-nodes-base.googleCalendarTool","position":[832,2736],"parameters":{"eventId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}","options":{},"calendar":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}","__regex":"(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"},"operation":"get"},"typeVersion":1.3},{"id":"66c1d8a6-73c4-4be5-8f6d-342ad548bede","name":"Delete an event in Google Calendar","type":"n8n-nodes-base.googleCalendarTool","position":[976,2736],"parameters":{"eventId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}","options":{},"calendar":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}","__regex":"(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"},"operation":"delete"},"typeVersion":1.3},{"id":"e1d7ef2d-ab01-4129-a761-2e33abc75882","name":"Get availability in a calendar in Google Calendar","type":"n8n-nodes-base.googleCalendarTool","position":[1120,2736],"parameters":{"options":{},"timeMax":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End_Time', ``, 'string') }}","timeMin":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Time', ``, 'string') }}","calendar":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}","__regex":"(^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"},"resource":"calendar"},"typeVersion":1.3},{"id":"3f1d9d49-d4e6-4a54-b651-533404e3cf94","name":"Download file in Google Drive","type":"n8n-nodes-base.googleDriveTool","position":[1328,2672],"parameters":{"fileId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('File', ``, 'string') }}"},"options":{},"operation":"download"},"typeVersion":3},{"id":"5ddd6c81-b65b-4c9b-bd63-c8b1bb91aea2","name":"Search files and folders in Google Drive","type":"n8n-nodes-base.googleDriveTool","position":[1488,2672],"parameters":{"limit":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Limit', ``, 'number') }}","filter":{},"options":{},"resource":"fileFolder","queryString":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Search_Query', ``, 'string') }}"},"typeVersion":3},{"id":"cdc2a8ca-278c-4403-ab35-b1db04ee00b1","name":"Get many shared drives in Google Drive","type":"n8n-nodes-base.googleDriveTool","position":[1632,2672],"parameters":{"limit":50,"options":{},"resource":"drive","operation":"list","returnAll":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}"},"typeVersion":3},{"id":"6cfa0b3a-bd5f-442e-b857-ebd76eaf1c21","name":"Create file from text in Google Drive","type":"n8n-nodes-base.googleDriveTool","position":[1792,2672],"parameters":{"name":"={{$now.format('yyyyLLdd')}}","content":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('File_Content', ``, 'string') }}","driveId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Parent_Drive', ``, 'string') }}"},"options":{},"folderId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Parent_Folder', ``, 'string') }}"},"operation":"createFromText"},"typeVersion":3},{"id":"7bdad212-4128-4a48-80e2-79f29ff42c21","name":"Move file in Google Drive","type":"n8n-nodes-base.googleDriveTool","position":[1984,2672],"parameters":{"fileId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('File', ``, 'string') }}"},"driveId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Parent_Drive', ``, 'string') }}"},"folderId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Parent_Folder', ``, 'string') }}"},"operation":"move"},"typeVersion":3},{"id":"93436800-ea48-4a7d-a581-6212646be140","name":"Create a document in Google Docs","type":"n8n-nodes-base.googleDocsTool","position":[1632,3488],"parameters":{"title":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Title', ``, 'string') }}","folderId":"default"},"typeVersion":2},{"id":"f7182e80-1b8c-4d44-b423-ac87977fe874","name":"Get a document in Google Docs","type":"n8n-nodes-base.googleDocsTool","position":[1808,3488],"parameters":{"operation":"get","documentURL":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Doc_ID_or_URL', ``, 'string') }}"},"typeVersion":2},{"id":"68f36c9a-2fd9-4c23-9d54-0fb2b0cbc046","name":"Update a document in Google Docs","type":"n8n-nodes-base.googleDocsTool","position":[2016,3488],"parameters":{"actionsUi":{"actionFields":[{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('actionFields0_Text', ``, 'string') }}","action":"insert"}]},"operation":"update","documentURL":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Doc_ID_or_URL', ``, 'string') }}"},"typeVersion":2},{"id":"f05f575a-6808-4879-b767-f796e4ea6065","name":"MCP Docs Trigger","type":"@n8n/n8n-nodes-langchain.mcpTrigger","position":[1712,3328],"webhookId":"1f35317d-7b8e-48b9-a419-936ea5b63ae6","parameters":{"path":"1f35317d-7b8e-48b9-a419-936ea5b63ae6"},"typeVersion":2},{"id":"eab0bd78-74ba-4b93-a91e-650ca05a9887","name":"MCP Drive Trigger","type":"@n8n/n8n-nodes-langchain.mcpTrigger","position":[1536,2528],"webhookId":"031809b0-c277-4ff1-b65a-9e72294b1ff1","parameters":{"path":"031809b0-c277-4ff1-b65a-9e72294b1ff1"},"typeVersion":2},{"id":"31367f91-bb19-42de-bce6-4a2af35bfd0a","name":"MCP Sheet Trigger","type":"@n8n/n8n-nodes-langchain.mcpTrigger","position":[-256,3312],"webhookId":"1f35317d-7b8e-48b9-a419-936ea5b63ae6","parameters":{"path":"1f35317d-7b8e-48b9-a419-936ea5b63ae6"},"typeVersion":2},{"id":"e9bffc25-264c-4dea-a37b-c84bfd6d042f","name":"Get row(s) in sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[-528,3504],"parameters":{"options":{},"sheetName":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sheet', ``, 'string') }}"},"documentId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Document', ``, 'string') }}"}},"typeVersion":4.7},{"id":"f1f4f0a8-fc9a-4f03-a022-653ed4513a6d","name":"Append or update row in sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[-368,3504],"parameters":{"columns":{"value":{},"schema":[],"mappingMode":"autoMapInputData","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"appendOrUpdate","sheetName":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sheet', ``, 'string') }}"},"documentId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Document', ``, 'string') }}"}},"typeVersion":4.7},{"id":"0a803d0d-9e80-45bf-9255-312bd607732c","name":"Create sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[-48,3504],"parameters":{"title":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Title', ``, 'string') }}","options":{},"operation":"create","documentId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Document', ``, 'string') }}"}},"typeVersion":4.7},{"id":"7dc142a2-9573-4ee3-ba23-d33ec1a430cb","name":"Delete rows or columns from sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[96,3504],"parameters":{"operation":"delete","sheetName":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sheet', ``, 'string') }}"},"documentId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Document', ``, 'string') }}"},"startIndex":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Row_Number', ``, 'number') }}","numberToDelete":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Number_of_Rows_to_Delete', ``, 'number') }}"},"typeVersion":4.7},{"id":"4ba9f84f-948e-4c8c-829a-5b9a3f49bb80","name":"Update row in sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[-224,3504],"parameters":{"columns":{"value":{},"schema":[],"mappingMode":"autoMapInputData","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false},"options":{},"operation":"update","sheetName":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sheet', ``, 'string') }}"},"documentId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Document', ``, 'string') }}"}},"typeVersion":4.7},{"id":"9330110e-2902-4979-826f-fc4028d6e059","name":"Clear sheet in Google Sheets","type":"n8n-nodes-base.googleSheetsTool","position":[256,3488],"parameters":{"operation":"clear","sheetName":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Sheet', ``, 'string') }}"},"documentId":{"__rl":true,"mode":"id","value":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Document', ``, 'string') }}"},"keepFirstRow":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Keep_First_Row', ``, 'boolean') }}"},"typeVersion":4.7},{"id":"4fe3da3e-56fb-4705-999c-1b8c8b15c7e4","name":"Create a presentation in Google Slides","type":"n8n-nodes-base.googleSlidesTool","position":[656,3504],"parameters":{"title":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Title', ``, 'string') }}"},"typeVersion":2},{"id":"a086528c-65be-4f0b-bd8d-e37ae94d69d5","name":"MCP Slides Trigger","type":"@n8n/n8n-nodes-langchain.mcpTrigger","position":[816,3296],"webhookId":"1f35317d-7b8e-48b9-a419-936ea5b63ae6","parameters":{"path":"1f35317d-7b8e-48b9-a419-936ea5b63ae6"},"typeVersion":2},{"id":"c789143b-ccb1-4812-9a34-89e16f7a928e","name":"Get a presentation in Google Slides","type":"n8n-nodes-base.googleSlidesTool","position":[816,3504],"parameters":{"operation":"get","presentationId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Presentation_ID', ``, 'string') }}"},"typeVersion":2},{"id":"2c9be9f2-70a4-4472-85ca-c238f2236285","name":"Get slides from a presentation in Google Slides","type":"n8n-nodes-base.googleSlidesTool","position":[976,3504],"parameters":{"operation":"getSlides","returnAll":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}","presentationId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Presentation_ID', ``, 'string') }}"},"typeVersion":2},{"id":"10d5d110-f242-46a2-a5a3-6d5f1e2bebdc","name":"Replace text in a presentation in Google Slides","type":"n8n-nodes-base.googleSlidesTool","position":[1152,3504],"parameters":{"textUi":{"textValues":[{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('textValues0_Search_For', ``, 'string') }}","replaceText":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('textValues0_Replace_With', ``, 'string') }}"}]},"options":{"revisionId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Revision_ID', ``, 'string') }}"},"operation":"replaceText","presentationId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Presentation_ID', ``, 'string') }}"},"typeVersion":2},{"id":"ee269946-4fc4-4dcf-9319-8334442a8efa","name":"Delete a draft in Gmail","type":"n8n-nodes-base.gmailTool","position":[192,2944],"webhookId":"4cda1631-469d-4c82-ac9b-cb6bfcd68fa0","parameters":{"resource":"draft","messageId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Draft_ID', ``, 'string') }}","operation":"delete"},"typeVersion":2.1},{"id":"9d9db45e-b11d-4230-b587-c7e4bc165565","name":"Delete a message in Gmail","type":"n8n-nodes-base.gmailTool","position":[-512,2944],"webhookId":"4cda1631-469d-4c82-ac9b-cb6bfcd68fa0","parameters":{"messageId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Draft_ID', ``, 'string') }}","operation":"delete"},"typeVersion":2.1},{"id":"c14ac52c-602d-4a0e-85ed-9dc064a47f3d","name":"Add label to message in Gmail","type":"n8n-nodes-base.gmailTool","position":[-336,2944],"webhookId":"4cda1631-469d-4c82-ac9b-cb6bfcd68fa0","parameters":{"labelIds":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Label_Names_or_IDs', ``, 'string') }}","messageId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Draft_ID', ``, 'string') }}","operation":"addLabels"},"typeVersion":2.1},{"id":"791ba40d-22b8-413a-808d-3c38b8a4b453","name":"Remove label from message in Gmail","type":"n8n-nodes-base.gmailTool","position":[-160,2944],"webhookId":"4cda1631-469d-4c82-ac9b-cb6bfcd68fa0","parameters":{"labelIds":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Label_Names_or_IDs', ``, 'string') }}","messageId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Draft_ID', ``, 'string') }}","operation":"removeLabels"},"typeVersion":2.1},{"id":"92449df8-4258-4509-83e9-a7236ec88c83","name":"Send message and wait for response in Gmail","type":"n8n-nodes-base.gmailTool","position":[16,2944],"webhookId":"4cda1631-469d-4c82-ac9b-cb6bfcd68fa0","parameters":{"sendTo":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To', ``, 'string') }}","message":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}","options":{},"subject":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}","operation":"sendAndWait"},"typeVersion":2.1},{"id":"d2bcf517-2763-4fc0-bab0-8f4065f6d7d4","name":"Gmail Agent","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[1488,1856],"parameters":{"options":{},"endpointUrl":"https://n8n.skool.n3witalia.com/mcp-test/63975752-0598-4992-9422-165a84c8798c"},"typeVersion":1.2},{"id":"a91d816c-8fb6-401b-b669-d37a3a75558d","name":"Google Drive Agent","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[1488,2016],"parameters":{"options":{},"endpointUrl":"https://n8n.skool.n3witalia.com/mcp-test/63975752-0598-4992-9422-165a84c8798c"},"typeVersion":1.2},{"id":"544a8947-8ffd-4685-bdf0-3fd258afd9dd","name":"Google Calendar Agent","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[1632,2000],"parameters":{"options":{}},"typeVersion":1.2},{"id":"8e6a21cc-1209-4cd5-8237-22563e60563d","name":"Google Slides Agent","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[1776,2016],"parameters":{"options":{}},"typeVersion":1.2},{"id":"5837e19e-bcc1-41f5-affc-2d3d45304b63","name":"Google Docs Agent","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[1616,1856],"parameters":{"options":{}},"typeVersion":1.2},{"id":"600d8ff3-0edd-4f64-81e7-d4f556e113f8","name":"Google Sheets Agent","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[1760,1856],"parameters":{"options":{}},"typeVersion":1.2},{"id":"08f52ac5-4e89-44a7-8c95-e2b15901808e","name":"OpenClaw Agents","type":"@n8n/n8n-nodes-langchain.agent","position":[1344,1264],"parameters":{"text":"={{ $json.chatInput ?? '' }}\n\nImage Url (if exist): {{ $json.image_url ?? '' }}","options":{"systemMessage":"=# 🤖 Universal Orchestrator Agent — n8n OpenClaw Simulation\n\nYou are an advanced AI orchestrator agent running inside n8n, simulating an OpenClaw-style multi-agent architecture. Your role is to analyze the user's request, decompose it into tasks, and intelligently delegate each task to the most appropriate specialized tool or sub-agent. You operate autonomously, chain tool calls as needed, and synthesize results into a coherent final response.\n\n---\n\n## 🧠 CORE BEHAVIOR\n\n- Always reason step-by-step before calling any tool.\n- Select the most appropriate tool(s) based on the nature of the request.\n- Chain multiple tools when a task requires it (e.g., research → write doc → send email).\n- Never ask the user for information you can retrieve yourself via tools.\n- If a tool returns insufficient results, try an alternative tool or refine your query.\n- Always summarize what you did and what the outcome was.\n\n---\n\n## 🛠️ AVAILABLE TOOLS & AGENTS\n\n### 🔍 1. Research Agent (`research_agent`)\n- **Provider:** Perplexity AI\n- **Use when:** The user needs deep research, fact-checking, topic analysis, competitor research, industry reports, or any question requiring up-to-date internet knowledge.\n- **Input:** A well-formed research question or topic.\n- **Output:** Structured research summary with sources.\n\n---\n\n### 🌐 2. Web Search Agent (`websearch_agent`)\n- **Provider:** Perplexity AI\n- **Use when:** The user needs quick web searches, current news, recent events, prices, or lightweight information retrieval (faster and lighter than full Research Agent).\n- **Input:** A search query string.\n- **Output:** Top results with snippets and URLs.\n\n---\n\n### 🕷️ 3. Scraper Agent (`scraper_agent`)\n- **Provider:** ScrapeGraphAI\n- **Use when:** The user provides a URL or asks to extract structured data from a specific webpage (e.g., product details, article content, table data, contact info).\n- **Input:** URL + extraction instructions (what data to extract).\n- **Output:** Structured JSON or formatted text extracted from the page.\n\n---\n\n### 📁 4. Google Drive Agent (`googledrive_agent`)\n- **Use when:** The user needs to search, list, upload, download, move, or manage files and folders in Google Drive.\n- **Input:** Action type + file name/ID/folder path.\n- **Output:** File metadata, download links, or confirmation of action performed.\n\n---\n\n### 📧 5. Gmail Agent (`gmail_agent`)\n- **Use when:** The user needs to read, search, send, reply to, or organize emails in Gmail.\n- **Input:** Action type (send/read/search/reply) + relevant parameters (to, subject, body, search query).\n- **Output:** Email content, sent confirmation, or list of matching emails.\n\n---\n\n### 📝 6. Google Docs Agent (`googledocs_agent`)\n- **Use when:** The user needs to create, read, edit, append content to, or format a Google Doc.\n- **Input:** Action type + document ID or title + content to write/append.\n- **Output:** Document link, content extracted, or confirmation of edit.\n\n---\n\n### 📊 7. Google Sheets Agent (`googlesheets_agent`)\n- **Use when:** The user needs to read, write, update, or analyze data in a Google Sheet (e.g., logging data, pulling reports, updating CRM-like tables).\n- **Input:** Action type + spreadsheet ID/name + sheet/range + data payload.\n- **Output:** Data rows, updated values, or confirmation.\n\n---\n\n### 📑 8. Google Slides Agent (`googleslides_agent`)\n- **Use when:** The user needs to create a presentation, add/edit slides, or extract content from Google Slides.\n- **Input:** Action type + presentation ID or title + slide content/instructions.\n- **Output:** Presentation link or confirmation of changes.\n\n---\n\n### 📅 9. Google Calendar Agent (`googlecalendar_agent`)\n- **Use when:** The user needs to create, read, update, or delete calendar events, check availability, or schedule meetings.\n- **Input:** Action type + event details (title, date, time, attendees, description).\n- **Output:** Event link, list of events, or confirmation of action.\n\n---\n\n### 🧠 10. RAG Agent (`rag_agent`)\n- **Use when:** The user asks questions about internal documents, company knowledge base, uploaded files, or any private/indexed knowledge that is not publicly available on the web.\n- **Input:** A natural language question or query.\n- **Output:** Answer grounded in retrieved document chunks with source references.\n\n---\n\n### 🔌 11. MCP Agents (`mcp_[service_name]`)\n> **Placeholder — extend as needed**\n- **Use when:** The user requires integration with an external service connected via Model Context Protocol (MCP).\n- **Available MCP endpoints:** *(to be configured — replace with actual service names)*\n  - `mcp_placeholder_1` — [Service Name TBD]\n  - `mcp_placeholder_2` — [Service Name TBD]\n  - `mcp_placeholder_3` — [Service Name TBD]\n- **Input:** Service-specific action and parameters.\n- **Output:** Service-specific response.\n\n---\n\n### ⚙️ 12. Sub-Workflows (`subwf_[workflow_name]`)\n> **Placeholder — extend as needed**\n- **Use when:** The user's request maps to a predefined automation workflow in n8n.\n- **Available Sub-Workflows:**\n  - `subwf_social_posting` — **Postiz Integration**: Post content to any social media platform (LinkedIn, Twitter/X, Instagram, Facebook, TikTok, etc.). Input: platform, content text, media URL (optional), scheduled time (optional).\n  - `subwf_placeholder_2` — [Workflow Name TBD]\n  - `subwf_placeholder_3` — [Workflow Name TBD]\n  - `subwf_placeholder_4` — [Workflow Name TBD]\n- **Input:** Workflow-specific parameters.\n- **Output:** Workflow execution result or confirmation.\n\n---\n\n### 🚨 13. Escalation Agent (`escalation_agent`)\n- **Use when:**\n  - A task cannot be completed by any available tool after multiple attempts.\n  - The request involves ambiguous, sensitive, or critical decisions requiring human judgment.\n  - An error or unexpected result occurs that blocks task completion.\n  - The user explicitly requests human review or approval.\n- **Input:** Summary of the issue, tools already attempted, reason for escalation.\n- **Output:** Escalation notification sent to the responsible human (via email, Slack, or designated channel), with full context attached.\n\n---\n\n## 🔄 ORCHESTRATION LOGIC\n\nFollow this decision flow for every request:\nUNDERSTAND → Parse the user intent and identify all sub-tasks.\nPLAN → Map each sub-task to the most suitable tool/agent.\nEXECUTE → Call tools sequentially or in parallel as needed.\nEVALUATE → Check if results are complete and accurate.\nCHAIN → If further steps are needed, call additional tools with previous output as input.\nESCALATE → If blocked or uncertain, call escalation_agent.\nRESPOND → Synthesize all results into a clear, structured final answer.\n\n---\n\n## 📋 TOOL SELECTION CHEAT SHEET\n\n| User Need | Primary Tool |\n|---|---|\n| Research a topic in depth | `research_agent` |\n| Quick web search / news | `websearch_agent` |\n| Extract data from a URL | `scraper_agent` |\n| Manage files in Drive | `googledrive_agent` |\n| Send / read emails | `gmail_agent` |\n| Write / edit a document | `googledocs_agent` |\n| Work with spreadsheet data | `googlesheets_agent` |\n| Create / edit a presentation | `googleslides_agent` |\n| Schedule / manage events | `googlecalendar_agent` |\n| Query internal knowledge base | `rag_agent` |\n| External service via MCP | `mcp_[service_name]` |\n| Run a predefined automation | `subwf_[workflow_name]` |\n| Post on social media | `subwf_social_posting` |\n| Task failed / needs human | `escalation_agent` |\n\n---\n\n## ⚠️ RULES & CONSTRAINTS\n\n- **Never hallucinate tool results.** If a tool is unavailable or returns an error, report it honestly.\n- **Always confirm destructive actions** (delete, send email to many recipients, post publicly) before executing if there is any ambiguity.\n- **Respect data privacy.** Do not expose sensitive data in intermediate steps unnecessarily.\n- **Keep tool calls focused.** Pass precise, minimal inputs — do not dump large unstructured text into tools.\n- **Log your reasoning.** Before each tool call, briefly state why you are calling it.\n- **If in doubt, escalate.** It is always better to escalate than to take a wrong action autonomously.\n\n---\n\n*Orchestrator ready. Awaiting your instructions.*"},"promptType":"define"},"typeVersion":3.1},{"id":"c5cb1d06-d651-4cfa-9990-844e22b18439","name":"Websearch Agent","type":"n8n-nodes-base.perplexityTool","position":[1568,1488],"parameters":{"options":{},"messages":{"message":[{"content":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('message0_Text', ``, 'string') }}"}]},"requestOptions":{}},"typeVersion":1},{"id":"d5c5bea8-9873-4791-9e90-aa3237f4cde0","name":"Scraper Agent","type":"n8n-nodes-scrapegraphai.scrapegraphAiTool","position":[1680,1488],"parameters":{"userPrompt":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('User_Prompt', ``, 'string') }}","websiteUrl":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Website_URL', ``, 'string') }}","renderHeavyJs":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Render_Heavy_JS', ``, 'boolean') }}","enableScrolling":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Enable_Infinite_Scrolling', ``, 'boolean') }}","useOutputSchema":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Use_Custom_Output_Schema', ``, 'boolean') }}","enablePagination":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Enable_Pagination', ``, 'boolean') }}"},"typeVersion":1},{"id":"2abb18cd-1f7b-40d0-bb04-8a309d3f44d5","name":"RAG Agent","type":"@n8n/n8n-nodes-langchain.vectorStoreQdrant","position":[2096,1472],"parameters":{"mode":"retrieve-as-tool","options":{},"useReranker":true,"toolDescription":"RAG Agent","qdrantCollection":{"__rl":true,"mode":"list","value":""}},"typeVersion":1.3},{"id":"b5b46ab6-454c-49be-81ae-1dfa12dc4092","name":"Embeddings OpenAI","type":"@n8n/n8n-nodes-langchain.embeddingsOpenAi","position":[2112,1648],"parameters":{"options":{}},"typeVersion":1.2},{"id":"407faf5a-c921-4618-9174-aefe633c62d2","name":"Reranker Cohere","type":"@n8n/n8n-nodes-langchain.rerankerCohere","position":[2288,1648],"parameters":{},"typeVersion":1},{"id":"db2c38f7-0f43-4b8e-9883-017c6253e63b","name":"Image and Video Grok Agent","type":"@n8n/n8n-nodes-langchain.toolWorkflow","position":[2080,1856],"parameters":{"workflowId":{"__rl":true,"mode":"list","value":"klLje7jNDPINkW4Y","cachedResultUrl":"/workflow/klLje7jNDPINkW4Y","cachedResultName":"Image Grok Agent with Telegram"},"description":"Create and edit Image and Video","workflowInputs":{"value":{"query":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('query', ``, 'string') }}","duration":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('duration', ``, 'number') }}","image_url":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('image_url', ``, 'string') }}","tool_name":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('tool_name', ``, 'string') }}","video_url":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('video_url', ``, 'string') }}"},"schema":[{"id":"tool_name","type":"string","display":true,"removed":false,"required":false,"displayName":"tool_name","defaultMatch":false,"canBeUsedToMatch":true},{"id":"query","type":"string","display":true,"removed":false,"required":false,"displayName":"query","defaultMatch":false,"canBeUsedToMatch":true},{"id":"duration","type":"number","display":true,"removed":false,"required":false,"displayName":"duration","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_url","type":"string","display":true,"removed":false,"required":false,"displayName":"video_url","defaultMatch":false,"canBeUsedToMatch":true},{"id":"image_url","type":"string","display":true,"removed":false,"required":false,"displayName":"image_url","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false}},"typeVersion":2.2},{"id":"2dcacdc8-331b-4b96-a843-83c98c9b8a22","name":"Others MCP Client","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[2240,1856],"parameters":{"options":{}},"typeVersion":1.2},{"id":"433e4917-7b46-4a21-8b81-a8162df3102a","name":"Others SubWF","type":"@n8n/n8n-nodes-langchain.toolWorkflow","position":[2384,1856],"parameters":{"workflowId":{"__rl":true,"mode":"list","value":"klLje7jNDPINkW4Y","cachedResultUrl":"/workflow/klLje7jNDPINkW4Y","cachedResultName":"Image Grok Agent with Telegram"},"description":"Chiama questo tool  solo quando devi modificare un video già esistente. NON per crearlo","workflowInputs":{"value":{"query":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('query', ``, 'string') }}","duration":0,"tool_name":"Run text to image"},"schema":[{"id":"tool_name","type":"string","display":true,"removed":false,"required":false,"displayName":"tool_name","defaultMatch":false,"canBeUsedToMatch":true},{"id":"query","type":"string","display":true,"removed":false,"required":false,"displayName":"query","defaultMatch":false,"canBeUsedToMatch":true},{"id":"duration","type":"number","display":true,"removed":false,"required":false,"displayName":"duration","defaultMatch":false,"canBeUsedToMatch":true},{"id":"video_url","type":"string","display":true,"removed":false,"required":false,"displayName":"video_url","defaultMatch":false,"canBeUsedToMatch":true},{"id":"image_url","type":"string","display":true,"removed":false,"required":false,"displayName":"image_url","defaultMatch":false,"canBeUsedToMatch":true}],"mappingMode":"defineBelow","matchingColumns":[],"attemptToConvertTypes":false,"convertFieldsToString":false}},"typeVersion":2.2},{"id":"f94deaef-333e-4849-a155-ee54f2d94a99","name":"Fix mimeType for Audio","type":"n8n-nodes-base.code","position":[2720,624],"parameters":{"jsCode":"for (const item of $input.all()) {\n  if (item.binary) {\n    const binaryPropertyNames = Object.keys(item.binary);\n    for (const propName of binaryPropertyNames) {\n      if (item.binary[propName].mimeType === 'audio/mp3') {\n        item.binary[propName].mimeType = 'audio/mpeg';\n      }\n    }\n  }\n}\n\nreturn $input.all();"},"typeVersion":2},{"id":"a1aebdb1-03c7-4157-b25b-2a0ecaa8a37d","name":"Generate Audio Response","type":"@n8n/n8n-nodes-langchain.openAi","position":[2432,624],"parameters":{"input":"={{ $json.output }}","voice":"onyx","options":{},"resource":"audio"},"typeVersion":1.8},{"id":"0696bb30-ce21-42b8-acf7-6a817c0a3be2","name":"From audio to audio?","type":"n8n-nodes-base.if","position":[2096,832],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"b9d1d759-f585-4791-a743-b9d72951e77c","operator":{"type":"object","operation":"exists","singleValue":true},"leftValue":"={{ $('Get Message').item.json.message.voice.file_id }}","rightValue":""}]}},"typeVersion":2.2},{"id":"141f3caa-e3ed-4dd0-8ab0-1fdfcd62b625","name":"Send an audio file","type":"n8n-nodes-base.telegram","position":[2992,624],"webhookId":"4cc62c0d-3555-41a6-9617-e3d5dc11bc5b","parameters":{"chatId":"={{ $('Get Message').item.json.message.from.id }}","operation":"sendAudio","binaryData":true,"additionalFields":{}},"typeVersion":1.2},{"id":"502b6855-e801-424a-9210-07884485df6f","name":"Normalization","type":"n8n-nodes-base.set","position":[704,800],"parameters":{"options":{},"assignments":{"assignments":[{"id":"029f4e7e-b367-4aa9-863e-e372694940fb","name":"chatInput","type":"string","value":"={{ $json.message.text }}"},{"id":"398c1d7f-0c90-4af6-a414-d4d1968855b9","name":"sessionId","type":"number","value":"={{ $json.message.from.id }}"}]}},"typeVersion":3.4},{"id":"697e6ecd-77a1-4b3d-b1ce-975ca6e28252","name":"Calculator","type":"@n8n/n8n-nodes-langchain.toolCalculator","position":[1808,1488],"parameters":{},"typeVersion":1},{"id":"460bf02f-9359-450e-a340-f3e808553e70","name":"Send a text message in Telegram","type":"n8n-nodes-base.telegramTool","position":[2688,1648],"webhookId":"3ff2dbe0-42a6-4261-a583-cdc28192a3f7","parameters":{"text":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Text', ``, 'string') }}","chatId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Chat_ID', ``, 'string') }}","additionalFields":{}},"typeVersion":1.2},{"id":"e4d78fe6-1915-4e0c-b7ea-7eef9a362d37","name":"Escalation","type":"n8n-nodes-base.telegramHitlTool","position":[2656,1488],"webhookId":"4d19adfc-9e20-454d-a26e-b01f40eb7679","parameters":{"chatId":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Chat_ID', ``, 'string') }}","options":{},"approvalOptions":{"values":{"approvalType":"double"}}},"typeVersion":1.2},{"id":"70495d52-ddfd-4b14-86f1-d4e6bfc43006","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[-672,368],"parameters":{"width":880,"height":608,"content":"## My Personal Agent (OpenClaw Clone in n8n and Telegram)\nThis workflow implements an **advanced AI automation agent (OpenClaw Agent)** that interacts with users through Telegram and integrates multiple AI models, external tools, and cloud services to automate complex tasks.\n\nI've described my basic idea in [this video](https://www.youtube.com/watch?v=DCo_HsLQ1aY).\n\n**VERY IMPORTANT**:\nBy adapting the system prompt, inserting subworkflows or mcp servers and adjusting with webhooks many of the [workflows I have developed on this page](https://n8n.io/creators/n3witalia/) it is possible to potentially extend the template infinitely.\n\n### How it works\n\nThis workflow acts as a Telegram-based AI orchestration layer that receives user messages, verifies access, and routes input by type: text goes directly to the agent, voice is transcribed, and images are converted into usable URLs with captions. The main OpenClaw Agent, powered by Gemini and backed by PostgreSQL memory, then decides which tools or sub-agents to use, including web research, scraping, Google Workspace actions, RAG via Qdrant, calculator functions, media generation, and Telegram utilities. After completing the task, it returns the response in text or converts it to audio for voice replies, with the option to escalate the conversation to a human operator when automation is not enough.\n\n### Setup steps\n\nSet up the Telegram bot first by creating it in BotFather, connecting Telegram credentials in n8n, and adding the authorized user ID in the Code node. Then configure all required credentials and services: OpenAI, Gemini, Google Cloud, Perplexity, ScrapeGraphAI, Cohere, PostgreSQL, Qdrant, and the FTP server used for image handling. After that, review webhook and MCP endpoint settings, replace every placeholder marked `XXX`, adjust language and prompt settings, and confirm tool descriptions align with your use case. Finally, test the workflow with sample text, voice, and image inputs before activating it in production.\n"},"typeVersion":1},{"id":"a44f5f58-11ab-433f-8bf8-2a10af81aea1","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[256,368],"parameters":{"color":7,"width":656,"height":608,"content":"## STEP 2 - Set up recurrences\nPlease replace xxx with the requested information, in particular the Telegram ID and the prompt to be scheduled periodically, for example every morning \"Send me the latest news on AI\"\n\nAlso add any external input webhooks you want."},"typeVersion":1},{"id":"5f7480f3-e122-499d-b3d9-444e39442b41","name":"Set up istruction","type":"n8n-nodes-base.set","position":[704,560],"parameters":{"options":{},"assignments":{"assignments":[{"id":"029f4e7e-b367-4aa9-863e-e372694940fb","name":"chatInput","type":"string","value":"=xxxx"},{"id":"398c1d7f-0c90-4af6-a414-d4d1968855b9","name":"sessionId","type":"number","value":"=xxxx"}]}},"typeVersion":3.4},{"id":"4e2939d5-3c16-4860-b773-3463c516c3b5","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[-688,1024],"parameters":{"color":7,"width":1600,"height":672,"content":"## STEP 2 - Set up Telegram\nConnect to your Telegram Bot and replace xxx with the required information, specifically the Telegram ID. Set your FTP Space\nYou can send text, audio or image"},"typeVersion":1},{"id":"d53ed7a8-8266-466c-bf94-06b6805de55c","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[976,1120],"parameters":{"color":7,"width":960,"height":576,"content":"## STEP 3 - Set up OpenClaw agent\nIn the prompt system add ALL tools you want"},"typeVersion":1},{"id":"6f19cfea-bb4b-4960-bf50-874fb2ec8bec","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[1376,1712],"parameters":{"color":7,"width":560,"height":464,"content":"## STEP 4 - Google MCP\nPlease configure MCP Server below (MCP Trigger) with the current MCP url"},"typeVersion":1},{"id":"8893e90d-0be6-4e11-8e6b-15b4da5400ab","name":"Sticky Note5","type":"n8n-nodes-base.stickyNote","position":[1984,1344],"parameters":{"color":7,"width":1088,"height":832,"content":"## STEP 5 - Expansion tool\nConfigure [RAG from Zero](https://n8n.io/workflows/7647-build-a-self-updating-rag-system-with-openai-google-gemini-qdrant-and-google-drive/), [Image and Video Grok Agent](https://n8n.io/workflows/13182-grok-imagine-video-chatbot-generate-and-modify-videos-via-natural-language/), ALL sub Workflow and extarnel MCP you want and Escalation Agent"},"typeVersion":1},{"id":"c3a1e249-a05e-4dec-a973-0bd8b6521971","name":"Sticky Note6","type":"n8n-nodes-base.stickyNote","position":[2320,464],"parameters":{"color":7,"width":944,"height":576,"content":"## STEP 6 - Output\nIf it is a voice message the agent responds with an audio, otherwise with text"},"typeVersion":1},{"id":"61f206a9-b5c0-4e90-a6d5-92dbf0c85d9d","name":"Sticky Note9","type":"n8n-nodes-base.stickyNote","position":[-1456,368],"parameters":{"color":7,"width":736,"height":736,"content":"## MY NEW YOUTUBE CHANNEL\n👉 [Subscribe to my new **YouTube channel**](https://youtube.com/@n3witalia). Here I’ll share videos and Shorts with practical tutorials and **FREE templates for n8n**.\n\n[![image](https://n3wstorage.b-cdn.net/n3witalia/youtube-n8n-cover.jpg)](https://youtube.com/@n3witalia)"},"typeVersion":1}],"active":false,"pinData":{},"settings":{"binaryMode":"separate","availableInMCP":false,"executionOrder":"v1"},"versionId":"c508d048-58f5-4a58-aae6-387ad90c3d04","connections":{"Code":{"main":[[{"node":"Switch2","type":"main","index":0}]]},"Switch2":{"main":[[{"node":"Get Text","type":"main","index":0}],[{"node":"Get voice message","type":"main","index":0}],[{"node":"Get image file","type":"main","index":0}]]},"Webhook":{"main":[[{"node":"Normalization","type":"main","index":0}]]},"Get Text":{"main":[[{"node":"OpenClaw Agents","type":"main","index":0}]]},"RAG Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Calculator":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Escalation":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Get Message":{"main":[[{"node":"Code","type":"main","index":0}]]},"Gmail Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Others SubWF":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Upload image":{"main":[[{"node":"Set Image Url","type":"main","index":0}]]},"Normalization":{"main":[[{"node":"OpenClaw Agents","type":"main","index":0}]]},"Scraper Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Set Image Url":{"main":[[{"node":"OpenClaw Agents","type":"main","index":0}]]},"Get image file":{"main":[[{"node":"Upload image","type":"main","index":0}]]},"OpenClaw Agents":{"main":[[{"node":"From audio to audio?","type":"main","index":0}]]},"Reranker Cohere":{"ai_reranker":[[{"node":"RAG Agent","type":"ai_reranker","index":0}]]},"Websearch Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Schedule Trigger":{"main":[[{"node":"Set up istruction","type":"main","index":0}]]},"Embeddings OpenAI":{"ai_embedding":[[{"node":"RAG Agent","type":"ai_embedding","index":0}]]},"Get voice message":{"main":[[{"node":"Transcribe recording","type":"main","index":0}]]},"Google Docs Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Others MCP Client":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Set up istruction":{"main":[[{"node":"OpenClaw Agents","type":"main","index":0}]]},"Google Drive Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Google Sheets Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Google Slides Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"From audio to audio?":{"main":[[{"node":"Generate Audio Response","type":"main","index":0}],[{"node":"Send a text message","type":"main","index":0}]]},"Postgres Chat Memory":{"ai_memory":[[{"node":"OpenClaw Agents","type":"ai_memory","index":0}]]},"Transcribe recording":{"main":[[{"node":"Get input text from voice","type":"main","index":0}]]},"Google Calendar Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Fix mimeType for Audio":{"main":[[{"node":"Send an audio file","type":"main","index":0}]]},"Get a message in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Create a draft in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Delete a draft in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Generate Audio Response":{"main":[[{"node":"Fix mimeType for Audio","type":"main","index":0}]]},"Send a message in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Google Gemini Chat Model":{"ai_languageModel":[[{"node":"OpenClaw Agents","type":"ai_languageModel","index":0}]]},"Delete a message in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Get input text from voice":{"main":[[{"node":"OpenClaw Agents","type":"main","index":0}]]},"Move file in Google Drive":{"ai_tool":[[{"node":"MCP Drive Trigger","type":"ai_tool","index":0}]]},"Get many messages in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Image and Video Grok Agent":{"ai_tool":[[{"node":"OpenClaw Agents","type":"ai_tool","index":0}]]},"Reply to a message in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Clear sheet in Google Sheets":{"ai_tool":[[{"node":"MCP Sheet Trigger","type":"ai_tool","index":0}]]},"Add label to message in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Create sheet in Google Sheets":{"ai_tool":[[{"node":"MCP Sheet Trigger","type":"ai_tool","index":0}]]},"Download file in Google Drive":{"ai_tool":[[{"node":"MCP Drive Trigger","type":"ai_tool","index":0}]]},"Get a document in Google Docs":{"ai_tool":[[{"node":"MCP Docs Trigger","type":"ai_tool","index":0}]]},"Get an event in Google Calendar":{"ai_tool":[[{"node":"MCP Calendar Trigger","type":"ai_tool","index":0}]]},"Send a text message in Telegram":{"ai_tool":[[{"node":"Escalation","type":"ai_tool","index":0}]]},"Create a document in Google Docs":{"ai_tool":[[{"node":"MCP Docs Trigger","type":"ai_tool","index":0}]]},"Update a document in Google Docs":{"ai_tool":[[{"node":"MCP Docs Trigger","type":"ai_tool","index":0}]]},"Create an event in Google Calendar":{"ai_tool":[[{"node":"MCP Calendar Trigger","type":"ai_tool","index":0}]]},"Delete an event in Google Calendar":{"ai_tool":[[{"node":"MCP Calendar Trigger","type":"ai_tool","index":0}]]},"Get many events in Google Calendar":{"ai_tool":[[{"node":"MCP Calendar Trigger","type":"ai_tool","index":0}]]},"Remove label from message in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Get a presentation in Google Slides":{"ai_tool":[[{"node":"MCP Slides Trigger","type":"ai_tool","index":0}]]},"Get row(s) in sheet in Google Sheets":{"ai_tool":[[{"node":"MCP Sheet Trigger","type":"ai_tool","index":0}]]},"Update row in sheet in Google Sheets":{"ai_tool":[[{"node":"MCP Sheet Trigger","type":"ai_tool","index":0}]]},"Create file from text in Google Drive":{"ai_tool":[[{"node":"MCP Drive Trigger","type":"ai_tool","index":0}]]},"Create a presentation in Google Slides":{"ai_tool":[[{"node":"MCP Slides Trigger","type":"ai_tool","index":0}]]},"Get many shared drives in Google Drive":{"ai_tool":[[{"node":"MCP Drive Trigger","type":"ai_tool","index":0}]]},"Search files and folders in Google Drive":{"ai_tool":[[{"node":"MCP Drive Trigger","type":"ai_tool","index":0}]]},"Send message and wait for response in Gmail":{"ai_tool":[[{"node":"MCP Gmail Trigger","type":"ai_tool","index":0}]]},"Append or update row in sheet in Google Sheets":{"ai_tool":[[{"node":"MCP Sheet Trigger","type":"ai_tool","index":0}]]},"Get slides from a presentation in Google Slides":{"ai_tool":[[{"node":"MCP Slides Trigger","type":"ai_tool","index":0}]]},"Replace text in a presentation in Google Slides":{"ai_tool":[[{"node":"MCP Slides Trigger","type":"ai_tool","index":0}]]},"Get availability in a calendar in Google Calendar":{"ai_tool":[[{"node":"MCP Calendar Trigger","type":"ai_tool","index":0}]]},"Delete rows or columns from sheet in Google Sheets":{"ai_tool":[[{"node":"MCP Sheet Trigger","type":"ai_tool","index":0}]]}}},"lastUpdatedBy":29,"workflowInfo":{"nodeCount":86,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.ftp":{"count":1},"n8n-nodes-base.set":{"count":5},"n8n-nodes-base.code":{"count":2},"n8n-nodes-base.switch":{"count":1},"n8n-nodes-base.webhook":{"count":1},"n8n-nodes-base.telegram":{"count":4},"n8n-nodes-base.gmailTool":{"count":10},"n8n-nodes-base.stickyNote":{"count":8},"n8n-nodes-base.telegramTool":{"count":1},"n8n-nodes-base.googleDocsTool":{"count":3},"n8n-nodes-base.perplexityTool":{"count":1},"@n8n/n8n-nodes-langchain.agent":{"count":1},"n8n-nodes-base.googleDriveTool":{"count":5},"n8n-nodes-base.scheduleTrigger":{"count":1},"n8n-nodes-base.telegramTrigger":{"count":1},"@n8n/n8n-nodes-langchain.openAi":{"count":2},"n8n-nodes-base.googleSheetsTool":{"count":6},"n8n-nodes-base.googleSlidesTool":{"count":4},"n8n-nodes-base.telegramHitlTool":{"count":1},"n8n-nodes-base.googleCalendarTool":{"count":5},"@n8n/n8n-nodes-langchain.mcpTrigger":{"count":6},"@n8n/n8n-nodes-langchain.toolWorkflow":{"count":2},"@n8n/n8n-nodes-langchain.mcpClientTool":{"count":7},"@n8n/n8n-nodes-langchain.rerankerCohere":{"count":1},"@n8n/n8n-nodes-langchain.toolCalculator":{"count":1},"@n8n/n8n-nodes-langchain.embeddingsOpenAi":{"count":1},"n8n-nodes-scrapegraphai.scrapegraphAiTool":{"count":1},"@n8n/n8n-nodes-langchain.vectorStoreQdrant":{"count":1},"@n8n/n8n-nodes-langchain.lmChatGoogleGemini":{"count":1},"@n8n/n8n-nodes-langchain.memoryPostgresChat":{"count":1}}},"status":"published","readyToDemo":null,"user":{"name":"Davide Boizza","username":"n3witalia","bio":"Full-stack Web Developer based in Italy specialising in Marketing & AI-powered automations. For business enquiries, send me an email at info@n3w.it or add me on Linkedin.com/in/davideboizza and Youtube.com/@n3witalia","verified":true,"links":["https://n3w.it"],"avatar":"https://gravatar.com/avatar/d41b8a0aa81139243509c58870f5b4be292824a507ab57d10ed066d8628ed8da?r=pg&d=retro&size=200"},"nodes":[{"id":20,"icon":"fa:map-signs","name":"n8n-nodes-base.if","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.","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/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/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"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/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"},{"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/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/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"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/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.if/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"If","color":"#408000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"If","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core 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":47,"icon":"file:webhook.svg","name":"n8n-nodes-base.webhook","codex":{"data":{"alias":["HTTP","API","Build","WH"],"resources":{"generic":[{"url":"https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/","icon":"✍️","label":"Learn how to automatically cross-post your content with n8n"},{"url":"https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/","icon":"🛳","label":"Running n8n on ships: An interview with Maranics"},{"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/what-are-apis-how-to-use-them-with-no-code/","icon":" 🪢","label":"What are APIs and how to use them with no code"},{"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/how-a-digital-strategist-uses-n8n-for-online-marketing/","icon":"💻","label":"How a digital strategist uses n8n for online marketing"},{"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/how-to-automatically-give-kudos-to-contributors-with-github-slack-and-n8n/","icon":"👏","label":"How to automatically give kudos to contributors with GitHub, Slack, 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/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/creating-custom-incident-response-workflows-with-n8n/","label":"How to automate every step of an incident response workflow"},{"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/learn-how-to-use-webhooks-with-mattermost-slash-commands/","icon":"🦄","label":"Learn how to use webhooks with Mattermost slash commands"},{"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"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"trigger\"]","defaults":{"name":"Webhook"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCI+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTM1IDM3Yy0yLjIgMC00LTEuOC00LTRzMS44LTQgNC00IDQgMS44IDQgNC0xLjggNC00IDQiLz48cGF0aCBmaWxsPSIjMzc0NzRmIiBkPSJNMzUgNDNjLTMgMC01LjktMS40LTcuOC0zLjdsMy4xLTIuNWMxLjEgMS40IDIuOSAyLjMgNC43IDIuMyAzLjMgMCA2LTIuNyA2LTZzLTIuNy02LTYtNmMtMSAwLTIgLjMtMi45LjdsLTEuNyAxTDIzLjMgMTZsMy41LTEuOSA1LjMgOS40YzEtLjMgMi0uNSAzLS41IDUuNSAwIDEwIDQuNSAxMCAxMFM0MC41IDQzIDM1IDQzIi8+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTE0IDQzQzguNSA0MyA0IDM4LjUgNCAzM2MwLTQuNiAzLjEtOC41IDcuNS05LjdsMSAzLjlDOS45IDI3LjkgOCAzMC4zIDggMzNjMCAzLjMgMi43IDYgNiA2czYtMi43IDYtNnYtMmgxNXY0SDIzLjhjLS45IDQuNi01IDgtOS44IDgiLz48cGF0aCBmaWxsPSIjZTkxZTYzIiBkPSJNMTQgMzdjLTIuMiAwLTQtMS44LTQtNHMxLjgtNCA0LTQgNCAxLjggNCA0LTEuOCA0LTQgNCIvPjxwYXRoIGZpbGw9IiMzNzQ3NGYiIGQ9Ik0yNSAxOWMtMi4yIDAtNC0xLjgtNC00czEuOC00IDQtNCA0IDEuOCA0IDQtMS44IDQtNCA0Ii8+PHBhdGggZmlsbD0iI2U5MWU2MyIgZD0ibTE1LjcgMzQtMy40LTIgNS45LTkuN2MtMi0xLjktMy4yLTQuNS0zLjItNy4zIDAtNS41IDQuNS0xMCAxMC0xMHMxMCA0LjUgMTAgMTBjMCAuOS0uMSAxLjctLjMgMi41bC0zLjktMWMuMS0uNS4yLTEgLjItMS41IDAtMy4zLTIuNy02LTYtNnMtNiAyLjctNiA2YzAgMi4xIDEuMSA0IDIuOSA1LjFsMS43IDF6Ii8+PC9zdmc+"},"displayName":"Webhook","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":49,"icon":"file:telegram.svg","name":"n8n-nodes-base.telegram","codex":{"data":{"alias":["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/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"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/world-poetry-day-workflow/","icon":"📜","label":"Celebrating World Poetry Day with a daily poem in Telegram"},{"url":"https://n8n.io/blog/using-automation-to-boost-productivity-in-the-workplace/","icon":"💪","label":"Using Automation to Boost Productivity in the Workplace"},{"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/creating-scheduled-text-affirmations-with-n8n/","icon":"🤟","label":"Creating scheduled text affirmations with n8n"},{"url":"https://n8n.io/blog/creating-telegram-bots-with-n8n-a-no-code-platform/","icon":"💬","label":"Creating Telegram Bots with n8n, a No-Code Platform"},{"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/app-nodes/n8n-nodes-base.telegram/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/telegram/"}]},"categories":["Communication","HITL"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"HITL":["Human in the Loop"]}}},"group":"[\"output\"]","defaults":{"name":"Telegram"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgNjYgNjYiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzM3YWVlMiIgZD0iTTAgMzJjMCAxNy42NzMgMTQuMzI3IDMyIDMyIDMyczMyLTE0LjMyNyAzMi0zMlM0OS42NzMgMCAzMiAwIDAgMTQuMzI3IDAgMzIiLz48cGF0aCBmaWxsPSIjYzhkYWVhIiBkPSJtMjEuNjYxIDM0LjMzOCAzLjc5NyAxMC41MDhzLjQ3NS45ODMuOTgzLjk4MyA4LjA2OC03Ljg2NCA4LjA2OC03Ljg2NGw4LjQwNy0xNi4yMzctMjEuMTE5IDkuODk4eiIvPjxwYXRoIGZpbGw9IiNhOWM2ZDgiIGQ9Im0yNi42OTUgMzcuMDM0LS43MjkgNy43NDZzLS4zMDUgMi4zNzMgMi4wNjggMGw0LjY0NC00LjIwMyIvPjxwYXRoIGQ9Im0yMS43MyAzNC43MTItNy44MDktMi41NDVzLS45MzItLjM3OC0uNjMzLTEuMjM3Yy4wNjItLjE3Ny4xODYtLjMyOC41NTktLjU4OCAxLjczMS0xLjIwNiAzMi4wMjgtMTIuMDk2IDMyLjAyOC0xMi4wOTZzLjg1Ni0uMjg4IDEuMzYxLS4wOTdjLjIzMS4wODguMzc4LjE4Ny41MDMuNTQ4LjA0NS4xMzIuMDcxLjQxMS4wNjguNjg5LS4wMDMuMjAxLS4wMjcuMzg2LS4wNDUuNjc4LS4xODQgMi45NzgtNS43MDYgMjUuMTk4LTUuNzA2IDI1LjE5OHMtLjMzIDEuMy0xLjUxNCAxLjM0NWMtLjQzMi4wMTYtLjk1Ni0uMDcxLTEuNTgyLS42MS0yLjMyMy0xLjk5OC0xMC4zNTItNy4zOTQtMTIuMTI2LTguNThhLjM0LjM0IDAgMCAxLS4xNDYtLjIzOWMtLjAyNS0uMTI1LjEwOC0uMjguMTA4LS4yOHMxMy45OC0xMi40MjcgMTQuMzUyLTEzLjczMWMuMDI5LS4xMDEtLjA3OS0uMTUxLS4yMjYtLjEwNy0uOTI5LjM0Mi0xNy4wMjUgMTAuNTA2LTE4LjgwMSAxMS42MjktLjEwNC4wNjYtLjM5NS4wMjMtLjM5NS4wMjMiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Telegram","typeVersion":1,"nodeCategories":[{"id":6,"name":"Communication"},{"id":28,"name":"HITL"}]},{"id":50,"icon":"file:telegram.svg","name":"n8n-nodes-base.telegramTrigger","codex":{"data":{"resources":{"generic":[{"url":"https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"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/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/creating-telegram-bots-with-n8n-a-no-code-platform/","icon":"💬","label":"Creating Telegram Bots with n8n, a No-Code Platform"},{"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/trigger-nodes/n8n-nodes-base.telegramtrigger/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/telegram/"}]},"categories":["Communication"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\"]","defaults":{"name":"Telegram Trigger"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgNjYgNjYiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzM3YWVlMiIgZD0iTTAgMzJjMCAxNy42NzMgMTQuMzI3IDMyIDMyIDMyczMyLTE0LjMyNyAzMi0zMlM0OS42NzMgMCAzMiAwIDAgMTQuMzI3IDAgMzIiLz48cGF0aCBmaWxsPSIjYzhkYWVhIiBkPSJtMjEuNjYxIDM0LjMzOCAzLjc5NyAxMC41MDhzLjQ3NS45ODMuOTgzLjk4MyA4LjA2OC03Ljg2NCA4LjA2OC03Ljg2NGw4LjQwNy0xNi4yMzctMjEuMTE5IDkuODk4eiIvPjxwYXRoIGZpbGw9IiNhOWM2ZDgiIGQ9Im0yNi42OTUgMzcuMDM0LS43MjkgNy43NDZzLS4zMDUgMi4zNzMgMi4wNjggMGw0LjY0NC00LjIwMyIvPjxwYXRoIGQ9Im0yMS43MyAzNC43MTItNy44MDktMi41NDVzLS45MzItLjM3OC0uNjMzLTEuMjM3Yy4wNjItLjE3Ny4xODYtLjMyOC41NTktLjU4OCAxLjczMS0xLjIwNiAzMi4wMjgtMTIuMDk2IDMyLjAyOC0xMi4wOTZzLjg1Ni0uMjg4IDEuMzYxLS4wOTdjLjIzMS4wODguMzc4LjE4Ny41MDMuNTQ4LjA0NS4xMzIuMDcxLjQxMS4wNjguNjg5LS4wMDMuMjAxLS4wMjcuMzg2LS4wNDUuNjc4LS4xODQgMi45NzgtNS43MDYgMjUuMTk4LTUuNzA2IDI1LjE5OHMtLjMzIDEuMy0xLjUxNCAxLjM0NWMtLjQzMi4wMTYtLjk1Ni0uMDcxLTEuNTgyLS42MS0yLjMyMy0xLjk5OC0xMC4zNTItNy4zOTQtMTIuMTI2LTguNThhLjM0LjM0IDAgMCAxLS4xNDYtLjIzOWMtLjAyNS0uMTI1LjEwOC0uMjguMTA4LS4yOHMxMy45OC0xMi40MjcgMTQuMzUyLTEzLjczMWMuMDI5LS4xMDEtLjA3OS0uMTUxLS4yMjYtLjEwNy0uOTI5LjM0Mi0xNy4wMjUgMTAuNTA2LTE4LjgwMSAxMS42MjktLjEwNC4wNjYtLjM5NS4wMjMtLjM5NS4wMjMiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Telegram Trigger","typeVersion":1,"nodeCategories":[{"id":6,"name":"Communication"}]},{"id":112,"icon":"fa:map-signs","name":"n8n-nodes-base.switch","codex":{"data":{"alias":["Router","If","Path","Filter","Condition","Logic","Branch","Case"],"resources":{"generic":[{"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/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/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"Switch","color":"#506000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"Switch","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":350,"icon":"fa:server","name":"n8n-nodes-base.ftp","codex":{"data":{"alias":["SFTP","FTP","Binary","File","Transfer"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.ftp/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/ftp/"}]},"categories":["Core Nodes","Data & Storage","Development","Utility"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Files","Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"FTP","color":"#303050"},"iconData":{"icon":"server","type":"icon"},"displayName":"FTP","typeVersion":1,"nodeCategories":[{"id":3,"name":"Data & Storage"},{"id":5,"name":"Development"},{"id":7,"name":"Utility"},{"id":9,"name":"Core Nodes"}]},{"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":834,"icon":"file:code.svg","name":"n8n-nodes-base.code","codex":{"data":{"alias":["cpde","Javascript","JS","Python","Script","Custom Code","Function"],"details":"The Code node allows you to execute JavaScript in your workflow.","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"}]},"categories":["Development","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Code"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Code","typeVersion":2,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]},{"id":839,"icon":"fa:clock","name":"n8n-nodes-base.scheduleTrigger","codex":{"data":{"alias":["Time","Scheduler","Polling","Cron","Interval"],"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\",\"schedule\"]","defaults":{"name":"Schedule Trigger","color":"#31C49F"},"iconData":{"icon":"clock","type":"icon"},"displayName":"Schedule 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":1141,"icon":"file:openAiLight.svg","name":"@n8n/n8n-nodes-langchain.embeddingsOpenAi","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.embeddingsopenai/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Embeddings"]}}},"group":"[\"transform\"]","defaults":{"name":"Embeddings OpenAI"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="},"displayName":"Embeddings OpenAI","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1195,"icon":"fa:calculator","name":"@n8n/n8n-nodes-langchain.toolCalculator","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolcalculator/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Other Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"Calculator"},"iconData":{"icon":"calculator","type":"icon"},"displayName":"Calculator","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1205,"icon":"fa:network-wired","name":"@n8n/n8n-nodes-langchain.toolWorkflow","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolworkflow/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Recommended Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"Call n8n Workflow Tool"},"iconData":{"icon":"network-wired","type":"icon"},"displayName":"Call n8n Workflow Tool","typeVersion":2,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1248,"icon":"file:qdrant.svg","name":"@n8n/n8n-nodes-langchain.vectorStoreQdrant","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.vectorstoreqdrant/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Vector Stores","Tools","Root Nodes"],"Tools":["Other Tools"],"Vector Stores":["Other Vector Stores"]}}},"group":"[\"transform\"]","defaults":{"name":"Qdrant Vector Store"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyBkYXRhLW5hbWU9IkNhcGEgMiIgdmlld0JveD0iMCAwIDM0Ni40MiA0MDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxkZWZzPgo8c3R5bGU+LmNscy0xIHsKICAgICAgICBmaWxsOiAjOWUwZDM4OwogICAgICB9CgogICAgICAuY2xzLTIgewogICAgICAgIGZpbGw6ICNkYzI0NGM7CiAgICAgIH0KCiAgICAgIC5jbHMtMyB7CiAgICAgICAgZmlsbDogI2ZmNTE2YjsKICAgICAgfTwvc3R5bGU+CjwvZGVmcz4KPHBvbHlnb24gY2xhc3M9ImNscy0yIiBwb2ludHM9IjE3My4yMSAwIDAgMTAwIDAgMzAwIDE3My4yMSA0MDAgMjM4LjE2IDM2Mi41IDIzOC4xNiAyODcuNSAxNzMuMjEgMzI1IDY0Ljk2IDI2Mi41IDY0Ljk2IDEzNy41IDE3My4yMSA3NSAyODEuNDYgMTM3LjUgMjgxLjQ2IDM4Ny41IDM0Ni40MiAzNTAgMzQ2LjQyIDEwMCIvPgo8cG9seWdvbiBjbGFzcz0iY2xzLTIiIHBvaW50cz0iMTA4LjI2IDE2Mi41IDEwOC4yNiAyMzcuNSAxNzMuMjEgMjc1IDIzOC4xNiAyMzcuNSAyMzguMTYgMTYyLjUgMTczLjIxIDEyNSIvPgo8cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iMjM4LjE2IDI4Ny41IDIzOC4xNiAzNjIuNSAxNzMuMjEgNDAwIDE3My4yMSAzMjUiLz4KPHBvbHlnb24gY2xhc3M9ImNscy0xIiBwb2ludHM9IjM0Ni40MiAxMDAgMzQ2LjQyIDM1MCAyODEuNDYgMzg3LjUgMjgxLjQ2IDEzNy41Ii8+Cjxwb2x5Z29uIGNsYXNzPSJjbHMtMyIgcG9pbnRzPSIzNDYuNDIgMTAwIDI4MS40NiAxMzcuNSAxNzMuMjEgNzUgNjQuOTYgMTM3LjUgMCAxMDAgMTczLjIxIDAiLz4KPHBvbHlnb24gY2xhc3M9ImNscy0yIiBwb2ludHM9IjE3My4yMSAzMjUgMTczLjIxIDQwMCAwIDMwMCAwIDEwMCA2NC45NiAxMzcuNSA2NC45NiAyNjIuNSIvPgo8cG9seWdvbiBjbGFzcz0iY2xzLTMiIHBvaW50cz0iMjM4LjE2IDE2Mi41IDE3My4yMSAyMDAgMTA4LjI2IDE2Mi41IDE3My4yMSAxMjUiLz4KPHBvbHlnb24gY2xhc3M9ImNscy0yIiBwb2ludHM9IjE3My4yMSAyMDAgMTczLjIxIDI3NSAxMDguMjYgMjM3LjUgMTA4LjI2IDE2Mi41Ii8+Cjxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSIyMzguMTYgMTYyLjUgMjM4LjE2IDIzNy41IDE3My4yMSAyNzUgMTczLjIxIDIwMCIvPgo8L3N2Zz4K"},"displayName":"Qdrant Vector Store","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1250,"icon":"file:openAi.svg","name":"@n8n/n8n-nodes-langchain.openAi","codex":{"data":{"alias":["LangChain","ChatGPT","Sora","DallE","whisper","audio","transcribe","tts","assistant"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-langchain.openai/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Agents","Miscellaneous","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"OpenAI"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg1IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NiAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MSA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K"},"displayName":"OpenAI","typeVersion":2,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1262,"icon":"file:google.svg","name":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatgooglegemini/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"Google Gemini Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgNDggNDgiPjxkZWZzPjxwYXRoIGlkPSJhIiBkPSJNNDQuNSAyMEgyNHY4LjVoMTEuOEMzNC43IDMzLjkgMzAuMSAzNyAyNCAzN2MtNy4yIDAtMTMtNS44LTEzLTEzczUuOC0xMyAxMy0xM2MzLjEgMCA1LjkgMS4xIDguMSAyLjlsNi40LTYuNEMzNC42IDQuMSAyOS42IDIgMjQgMiAxMS44IDIgMiAxMS44IDIgMjRzOS44IDIyIDIyIDIyYzExIDAgMjEtOCAyMS0yMiAwLTEuMy0uMi0yLjctLjUtNCIvPjwvZGVmcz48Y2xpcFBhdGggaWQ9ImIiPjx1c2UgeGxpbms6aHJlZj0iI2EiIG92ZXJmbG93PSJ2aXNpYmxlIi8+PC9jbGlwUGF0aD48cGF0aCBmaWxsPSIjRkJCQzA1IiBkPSJNMCAzN1YxMWwxNyAxM3oiIGNsaXAtcGF0aD0idXJsKCNiKSIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im0wIDExIDE3IDEzIDctNi4xTDQ4IDE0VjBIMHoiIGNsaXAtcGF0aD0idXJsKCNiKSIvPjxwYXRoIGZpbGw9IiMzNEE4NTMiIGQ9Im0wIDM3IDMwLTIzIDcuOSAxTDQ4IDB2NDhIMHoiIGNsaXAtcGF0aD0idXJsKCNiKSIvPjxwYXRoIGZpbGw9IiM0Mjg1RjQiIGQ9Ik00OCA0OCAxNyAyNGwtNC0zIDM1LTEweiIgY2xpcC1wYXRoPSJ1cmwoI2IpIi8+PC9zdmc+"},"displayName":"Google Gemini Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1267,"icon":"file:postgres.svg","name":"@n8n/n8n-nodes-langchain.memoryPostgresChat","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorypostgreschat/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Memory"],"Memory":["Other memories"]}}},"group":"[\"transform\"]","defaults":{"name":"Postgres Chat Memory"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiB2aWV3Qm94PSIwIDAgNzkgODEiPjx1c2UgeGxpbms6aHJlZj0iI2EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9ImEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBmaWxsLXJ1bGU9Im5vbnplcm8iIHN0cm9rZT0ibm9uZSI+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTc3LjM5MSA0Ny45MjJjLS40NjYtMS40MTItMS42ODgtMi4zOTYtMy4yNjgtMi42MzItLjc0NS0uMTExLTEuNTk4LS4wNjQtMi42MDguMTQ0LTEuNzYuMzYzLTMuMDY1LjUwMS00LjAxOC41MjggMy41OTYtNi4wNzIgNi41MjEtMTIuOTk3IDguMjA0LTE5LjUxNSAyLjcyMi0xMC41NCAxLjI2OC0xNS4zNDEtLjQzMi0xNy41MTNDNzAuNzcgMy4xODUgNjQuMjA2LjA5NyA1Ni4yODcuMDAyYy00LjIyNC0uMDUyLTcuOTMzLjc4Mi05Ljg2NyAxLjM4MmEzNyAzNyAwIDAgMC01Ljc3LS41MjhjLTMuODA5LS4wNjEtNy4xNzQuNzctMTAuMDUgMi40NzZhNDYgNDYgMCAwIDAtNy4wOTgtMS43ODJDMTYuNTYxLjQxMSAxMC45NjggMS4yOTkgNi44NzYgNC4xOSAxLjkyMiA3LjY4OS0uMzc1IDEzLjc3LjA1IDIyLjI2MmMuMTM1IDIuNjk2IDEuNjQzIDEwLjkgNC4wMTggMTguNjggMS4zNjUgNC40NzIgMi44MiA4LjE4NSA0LjMyNiAxMS4wMzggMi4xMzUgNC4wNDYgNC40MTkgNi40MjggNi45ODQgNy4yODQgMS40MzguNDc5IDQuMDQ5LjgxNCA2Ljc5Ny0xLjQ3M2E2IDYgMCAwIDAgMS40MjkgMS4yM2MuNzgzLjQ5NCAxLjc0Ljg5NyAyLjY5NiAxLjEzNiAzLjQ0Ni44NjIgNi42NzQuNjQ2IDkuNDI3LS41NjFsLjA0MSAxLjM2Mi4wNiAxLjg5OWMuMTYzIDQuMDY0LjQ0IDcuMjIzIDEuMjU5IDkuNDM0LjA0NS4xMjIuMTA1LjMwNy4xNjkuNTAzLjQwOSAxLjI1MSAxLjA5MiAzLjM0NiAyLjgzIDQuOTg3IDEuOCAxLjY5OSAzLjk3OCAyLjIyIDUuOTcyIDIuMjIgMSAwIDEuOTU1LS4xMzEgMi43OTItLjMxMSAyLjk4NC0uNjM5IDYuMzczLTEuNjE0IDguODI0LTUuMTA0IDIuMzE4LTMuMyAzLjQ0NC04LjI3IDMuNjQ4LTE2LjEwMWwuMDc0LS42MzQuMDQ4LS40MTQuNTQ2LjA0OC4xNDEuMDFjMy4wMzkuMTM4IDYuNzU1LS41MDYgOS4wMzctMS41NjYgMS44MDMtLjgzNyA3LjU4Mi0zLjg4OCA2LjIyMS04LjAwNyIvPjxwYXRoIGZpbGw9IiMzMzY3OTEiIGQ9Ik03Mi4xOTUgNDguNzIzYy05LjAzNiAxLjg2NC05LjY1Ny0xLjE5NS05LjY1Ny0xLjE5NSA5LjU0MS0xNC4xNTcgMTMuNTI5LTMyLjEyNyAxMC4wODctMzYuNTI1QzYzLjIzNS0uOTk0IDQ2Ljk4MSA0LjY4IDQ2LjcxIDQuODI3bC0uMDg3LjAxNmMtMS43ODUtLjM3MS0zLjc4My0uNTkxLTYuMDI5LS42MjgtNC4wODktLjA2Ny03LjE5IDEuMDcyLTkuNTQ0IDIuODU3IDAgMC0yOC45OTUtMTEuOTQ1LTI3LjY0NyAxNS4wMjMuMjg3IDUuNzM3IDguMjIzIDQzLjQxIDE3LjY4OSAzMi4wMzEgMy40Ni00LjE2MSA2LjgwMy03LjY3OSA2LjgwMy03LjY3OSAxLjY2IDEuMTAzIDMuNjQ4IDEuNjY2IDUuNzMyIDEuNDYzbC4xNjItLjEzN2E2LjMgNi4zIDAgMCAwIC4wNjUgMS42MmMtMi40MzkgMi43MjUtMS43MjIgMy4yMDMtNi41OTcgNC4yMDYtNC45MzMgMS4wMTctMi4wMzUgMi44MjYtLjE0MyAzLjI5OSAyLjI5NC41NzQgNy42IDEuMzg2IDExLjE4NS0zLjYzM2wtLjE0My41NzNjLjk1Ni43NjUgMS42MjYgNC45NzggMS41MTQgOC43OTdzLS4xODggNi40NDEuNTY1IDguNDg5IDEuNTAzIDYuNjU2IDcuOTEyIDUuMjgyYzUuMzU1LTEuMTQ4IDguMTMtNC4xMjEgOC41MTYtOS4wODEuMjc0LTMuNTI2Ljg5NC0zLjAwNS45MzMtNi4xNThsLjQ5Ny0xLjQ5M2MuNTczLTQuNzguMDkxLTYuMzIyIDMuMzktNS42MDVsLjgwMi4wN2MyLjQyOC4xMSA1LjYwNi0uMzkxIDcuNDcxLTEuMjU3IDQuMDE2LTEuODY0IDYuMzk4LTQuOTc2IDIuNDM4LTQuMTU4Ii8+PHBhdGggZD0iTTMyLjc0NyAyNC42NmMtLjgxNC0uMTEzLTEuNTUyLS4wMDgtMS45MjUuMjc0YS43LjcgMCAwIDAtLjI5Mi40N2MtLjA0Ny4zMzYuMTg4LjcwNy4zMzMuODk4LjQwOS41NDIgMS4wMDYuOTE1IDEuNTk4Ljk5N2EyIDIgMCAwIDAgLjI1Ni4wMThjLjk4NiAwIDEuODgzLS43NjggMS45NjItMS4zMzUuMDk5LS43MS0uOTMyLTEuMTgzLTEuOTMxLTEuMzIybTI2Ljk3NS4wMjJjLS4wNzgtLjU1Ni0xLjA2OC0uNzE1LTIuMDA3LS41ODRzLTEuODQ4LjU1NC0xLjc3MiAxLjExMmMuMDYxLjQzNC44NDQgMS4xNzQgMS43NzEgMS4xNzRxLjExNyAwIC4yMzctLjAxNmMuNjE5LS4wODYgMS4wNzMtLjQ3OSAxLjI4OC0uNzA1LjMyOS0uMzQ1LjUxOC0uNzMuNDg0LS45OG0xNS40NzcgMjMuODI4Yy0uMzQ1LTEuMDQyLTEuNDUzLTEuMzc3LTMuMjk2LS45OTctNS40NzEgMS4xMjktNy40My4zNDctOC4wNzMtLjEyNyA0LjI1Mi02LjQ3OCA3Ljc1LTE0LjMwOCA5LjYzNy0yMS42MTQuODk0LTMuNDYxIDEuMzg4LTYuNjc1IDEuNDI4LTkuMjk0LjA0NS0yLjg3Ni0uNDQ1LTQuOTg4LTEuNDU1LTYuMjc5LTQuMDcyLTUuMjAzLTEwLjA0OC03Ljk5NC0xNy4yODMtOC4wNy00Ljk3My0uMDU2LTkuMTc1IDEuMjE3LTkuOTkgMS41NzVhMjUgMjUgMCAwIDAtNS42MjItLjcyMmMtMy43MzQtLjA2LTYuOTYxLjgzNC05LjYzMyAyLjY1NWE0MyA0MyAwIDAgMC03LjgyOC0yLjA1MmMtNi4zNDItMS4wMjEtMTEuMzgxLS4yNDgtMTQuOTc4IDIuMy00LjI5MSAzLjA0LTYuMjcyIDguNDc1LTUuODg4IDE2LjE1Mi4xMjkgMi41ODMgMS42MDEgMTAuNTI5IDMuOTIzIDE4LjEzOSAzLjA1NyAxMC4wMTYgNi4zOCAxNS42ODYgOS44NzcgMTYuODUyYTQuNCA0LjQgMCAwIDAgMS40MDIuMjMyYzEuMjc2IDAgMi44MzktLjU3NSA0LjQ2Ni0yLjUzMWExNjEgMTYxIDAgMCAxIDYuMTU2LTYuOTY2IDkuOSA5LjkgMCAwIDAgNC40MjkgMS4xOTFsLjAxLjEyMWMtLjMxLjM2OC0uNTY0LjY5LS43ODEuOTY1LTEuMDcgMS4zNTgtMS4yOTMgMS42NDEtNC43MzggMi4zNTEtLjk4LjIwMi0zLjU4Mi43MzgtMy42MiAyLjU2My0uMDQxIDEuOTkzIDMuMDc2IDIuODMgMy40MzEgMi45MTkgMS4yMzguMzEgMi40My40NjMgMy41NjguNDYzIDIuNzY2IDAgNS4yLS45MDkgNy4xNDUtMi42NjgtLjA2IDcuMTA2LjIzNiAxNC4xMDcgMS4wODkgMTYuMjQxLjY5OSAxLjc0NiAyLjQwNiA2LjAxNCA3Ljc5OCA2LjAxNC43OTEgMCAxLjY2Mi0uMDkyIDIuNjItLjI5NyA1LjYyNy0xLjIwNyA4LjA3MS0zLjY5NCA5LjAxNi05LjE3Ny41MDYtMi45MyAxLjM3NC05LjkyOCAxLjc4Mi0xMy42ODIuODYyLjI2OSAxLjk3MS4zOTIgMy4xNy4zOTIgMi41MDEgMCA1LjM4Ny0uNTMxIDcuMTk3LTEuMzcyIDIuMDMzLS45NDQgNS43MDItMy4yNjEgNS4wMzctNS4yNzR6TTYxLjggMjMuMTQ3Yy0uMDE5IDEuMTA4LS4xNzEgMi4xMTQtLjMzMyAzLjE2NC0uMTc0IDEuMTI5LS4zNTQgMi4yOTctLjM5OSAzLjcxNS0uMDQ1IDEuMzc5LjEyOCAyLjgxNC4yOTQgNC4yLjMzNyAyLjgwMS42ODIgNS42ODUtLjY1NSA4LjUzMWExMSAxMSAwIDAgMS0uNTkyLTEuMjE4Yy0uMTY2LS40MDMtLjUyNy0xLjA1LTEuMDI3LTEuOTQ2LTEuOTQ0LTMuNDg3LTYuNDk3LTExLjY1Mi00LjE2Ny0xNC45ODQuNjk0LS45OTIgMi40NTYtMi4wMTEgNi44NzktMS40NjN6TTU2LjQzOSA0LjM3NGM2LjQ4Mi4xNDMgMTEuNjA5IDIuNTY4IDE1LjI0IDcuMjA3IDIuNzg0IDMuNTU4LS4yODIgMTkuNzQ5LTkuMTU4IDMzLjcxNmwtLjI2OS0uMzM5LS4xMTItLjE0YzIuMjk0LTMuNzg4IDEuODQ1LTcuNTM2IDEuNDQ2LTEwLjg1OS0uMTY0LTEuMzY0LS4zMTktMi42NTItLjI4LTMuODYxLjA0MS0xLjI4My4yMS0yLjM4Mi4zNzQtMy40NDYuMjAyLTEuMzExLjQwNy0yLjY2Ny4zNS00LjI2NWExLjggMS44IDAgMCAwIC4wMzctLjYwMWMtLjE0NC0xLjUzMy0xLjg5NC02LjEyLTUuNDYyLTEwLjI3My0xLjk1MS0yLjI3MS00Ljc5Ny00LjgxMy04LjY4Mi02LjUyN2EyOS4zIDI5LjMgMCAwIDEgNi41MTUtLjYxMnpNMjAuMTY3IDUzLjI5OGMtMS43OTMgMi4xNTUtMy4wMzEgMS43NDItMy40MzggMS42MDctMi42NTMtLjg4NS01LjczLTYuNDkxLTguNDQ0LTE1LjM4Mi0yLjM0OC03LjY5My0zLjcyLTE1LjQyOC0zLjgyOS0xNy41OTctLjM0My02Ljg2IDEuMzItMTEuNjQxIDQuOTQzLTE0LjIxIDUuODk2LTQuMTgxIDE1LjU4OS0xLjY3OSAxOS40ODQtLjQwOWwtLjE3LjE2M2MtNi4zOTEgNi40NTUtNi4yNCAxNy40ODMtNi4yMjQgMTguMTU3YTIyIDIyIDAgMCAwIC4wNTEgMS4xMzVjLjExIDEuODU1LjMxNSA1LjMwNy0uMjMyIDkuMjE3LS41MDggMy42MzMuNjEyIDcuMTg5IDMuMDcyIDkuNzU2cS4zODMuMzk4Ljc5NS43NWExNjQgMTY0IDAgMCAwLTYuMDA4IDYuODE0em02LjgzLTkuMTEzYy0xLjk4My0yLjA2OS0yLjg4NC00Ljk0Ny0yLjQ3MS03Ljg5Ni41NzctNC4xMy4zNjQtNy43MjcuMjUtOS42NTlsLS4wMzktLjY5NGMuOTM0LS44MjggNS4yNjEtMy4xNDYgOC4zNDYtMi40MzkgMS40MDguMzIzIDIuMjY2IDEuMjgxIDIuNjIzIDIuOTMxIDEuODQ2IDguNTM5LjI0NCAxMi4wOTgtMS4wNDMgMTQuOTU3LS4yNjUuNTg5LS41MTYgMS4xNDYtLjczIDEuNzIybC0uMTY2LjQ0NWMtLjQyIDEuMTI2LS44MTEgMi4xNzMtMS4wNTMgMy4xNjctMi4xMDgtLjAwNi00LjE1OS0uOTA3LTUuNzE4LTIuNTM0em0uMzI0IDExLjUxNmE1IDUgMCAwIDEtMS40OTQtLjY0MmMuMjcxLS4xMjguNzU0LS4zMDEgMS41OTEtLjQ3NCA0LjA1Mi0uODM0IDQuNjc4LTEuNDIzIDYuMDQ1LTMuMTU4LjMxMy0uMzk4LjY2OS0uODQ5IDEuMTYtMS4zOTguNzMzLS44MjEgMS4wNjgtLjY4MiAxLjY3Ni0uNDMuNDkzLjIwNC45NzIuODIxIDEuMTY3IDEuNTAxLjA5Mi4zMjEuMTk1LjkzLS4xNDMgMS40MDQtMi44NTUgMy45OTctNy4wMTUgMy45NDYtMTAuMDAzIDMuMTk4em0yMS4yMDcgMTkuNzM1Yy00Ljk1NyAxLjA2Mi02LjcxMy0xLjQ2Ny03Ljg2OS00LjM1OS0uNzQ3LTEuODY3LTEuMTEzLTEwLjI4NS0uODUzLTE5LjU4MmExLjEgMS4xIDAgMCAwLS4wNDgtLjM1NiA1IDUgMCAwIDAtLjEzOS0uNjU3Yy0uMzg3LTEuMzUzLTEuMzMxLTIuNDg0LTIuNDYyLTIuOTUzLS40NS0uMTg2LTEuMjc1LS41MjgtMi4yNjctLjI3NC4yMTItLjg3MS41NzgtMS44NTUuOTc2LTIuOTIxbC4xNjctLjQ0OGMuMTg4LS41MDUuNDIzLTEuMDI5LjY3My0xLjU4MyAxLjM0Ny0yLjk5MiAzLjE5Mi03LjA5MSAxLjE5LTE2LjM1LS43NS0zLjQ2OC0zLjI1NC01LjE2MS03LjA1LTQuNzY4LTIuMjc2LjIzNS00LjM1OCAxLjE1NC01LjM5NiAxLjY4cS0uMzM0LjE2OS0uNjE4LjMyOWMuMjktMy40OTQgMS4zODUtMTAuMDI0IDUuNDgxLTE0LjE1NiAyLjU3OS0yLjYwMSA2LjAxNC0zLjg4NiAxMC4xOTktMy44MTcgOC4yNDYuMTM1IDEzLjUzNCA0LjM2NyAxNi41MTggNy44OTMgMi41NzEgMy4wMzkgMy45NjQgNi4xIDQuNTIgNy43NTEtNC4xNzktLjQyNS03LjAyMi40LTguNDYzIDIuNDYtMy4xMzUgNC40ODEgMS43MTUgMTMuMTc4IDQuMDQ2IDE3LjM1OC40MjcuNzY2Ljc5NiAxLjQyOC45MTIgMS43MDkuNzU5IDEuODM5IDEuNzQyIDMuMDY3IDIuNDU5IDMuOTY0LjIyLjI3NS40MzMuNTQxLjU5Ni43NzQtMS4yNjYuMzY1LTMuNTM5IDEuMjA4LTMuMzMyIDUuNDIyLS4xNjcgMi4xMTUtMS4zNTYgMTIuMDE2LTEuOTU5IDE1LjUxNC0uNzk3IDQuNjIxLTIuNDk3IDYuMzQzLTcuMjc5IDcuMzY4em0yMC42OTMtMjMuNjhjLTEuMjk0LjYwMS0zLjQ2IDEuMDUyLTUuNTE4IDEuMTQ4LTIuMjczLjEwNy0zLjQzLS4yNTUtMy43MDItLjQ3Ny0uMTI4LTIuNjI2Ljg1LTIuOTAxIDEuODg0LTMuMTkxLjE2My0uMDQ2LjMyMS0uMDkuNDc0LS4xNDRhNCA0IDAgMCAwIC4zMTMuMjNjMS44MjcgMS4yMDYgNS4wODUgMS4zMzYgOS42ODUuMzg2bC4wNS0uMDFjLS42Mi41OC0xLjY4MiAxLjM1OS0zLjE4NyAyLjA1OHoiLz48L2c+PC9zeW1ib2w+PC9zdmc+"},"displayName":"Postgres Chat Memory","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1292,"icon":"file:../mcp.svg","name":"@n8n/n8n-nodes-langchain.mcpClientTool","codex":{"data":{"alias":["Model Context Protocol","MCP Client"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolmcp/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Recommended Tools"]}}},"group":"[\"output\"]","defaults":{"name":"MCP Client"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgwIiBoZWlnaHQ9IjE4MCIgdmlld0JveD0iMCAwIDE5NSAxOTUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+Cgk8ZyBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCI+CgkJPHBhdGggZD0iTTI1IDk3Ljg1MjhMOTIuODgyMyAyOS45NzA2QzEwMi4yNTUgMjAuNTk4IDExNy40NTEgMjAuNTk4IDEyNi44MjMgMjkuOTcwNlYyOS45NzA2QzEzNi4xOTYgMzkuMzQzMSAxMzYuMTk2IDU0LjUzOTEgMTI2LjgyMyA2My45MTE3TDc1LjU1ODEgMTE1LjE3NyIvPgoJCTxwYXRoIGQ9Ik03Ni4yNjUzIDExNC40N0wxMjYuODIzIDYzLjkxMTdDMTM2LjE5NiA1NC41MzkxIDE1MS4zOTIgNTQuNTM5MSAxNjAuNzY1IDYzLjkxMTdMMTYxLjExOCA2NC4yNjUyQzE3MC40OTEgNzMuNjM3OCAxNzAuNDkxIDg4LjgzMzggMTYxLjExOCA5OC4yMDYzTDk5LjcyNDggMTU5LjZDOTYuNjAwNiAxNjIuNzI0IDk2LjYwMDYgMTY3Ljc4OSA5OS43MjQ4IDE3MC45MTNMMTEyLjMzMSAxODMuNTIiLz4KCQk8cGF0aCBkPSJNMTA5Ljg1MyA0Ni45NDExTDU5LjY0ODIgOTcuMTQ1N0M1MC4yNzU3IDEwNi41MTggNTAuMjc1NyAxMjEuNzE0IDU5LjY0ODIgMTMxLjA4N1YxMzEuMDg3QzY5LjAyMDggMTQwLjQ1OSA4NC4yMTY4IDE0MC40NTkgOTMuNTg5NCAxMzEuMDg3TDE0My43OTQgODAuODgyMiIvPgoJPC9nPgo8L3N2Zz4K"},"displayName":"MCP Client Tool","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1293,"icon":"file:../mcp.svg","name":"@n8n/n8n-nodes-langchain.mcpTrigger","codex":{"data":{"alias":["Model Context Protocol","MCP Server"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.mcptrigger/"}]},"categories":["AI","Core Nodes","Langchain"],"subcategories":{"AI":["Root Nodes","Model Context Protocol"],"Core Nodes":["Other Trigger Nodes"]}}},"group":"[\"trigger\"]","defaults":{"name":"MCP Server Trigger"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgwIiBoZWlnaHQ9IjE4MCIgdmlld0JveD0iMCAwIDE5NSAxOTUiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+Cgk8ZyBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMTIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCI+CgkJPHBhdGggZD0iTTI1IDk3Ljg1MjhMOTIuODgyMyAyOS45NzA2QzEwMi4yNTUgMjAuNTk4IDExNy40NTEgMjAuNTk4IDEyNi44MjMgMjkuOTcwNlYyOS45NzA2QzEzNi4xOTYgMzkuMzQzMSAxMzYuMTk2IDU0LjUzOTEgMTI2LjgyMyA2My45MTE3TDc1LjU1ODEgMTE1LjE3NyIvPgoJCTxwYXRoIGQ9Ik03Ni4yNjUzIDExNC40N0wxMjYuODIzIDYzLjkxMTdDMTM2LjE5NiA1NC41MzkxIDE1MS4zOTIgNTQuNTM5MSAxNjAuNzY1IDYzLjkxMTdMMTYxLjExOCA2NC4yNjUyQzE3MC40OTEgNzMuNjM3OCAxNzAuNDkxIDg4LjgzMzggMTYxLjExOCA5OC4yMDYzTDk5LjcyNDggMTU5LjZDOTYuNjAwNiAxNjIuNzI0IDk2LjYwMDYgMTY3Ljc4OSA5OS43MjQ4IDE3MC45MTNMMTEyLjMzMSAxODMuNTIiLz4KCQk8cGF0aCBkPSJNMTA5Ljg1MyA0Ni45NDExTDU5LjY0ODIgOTcuMTQ1N0M1MC4yNzU3IDEwNi41MTggNTAuMjc1NyAxMjEuNzE0IDU5LjY0ODIgMTMxLjA4N1YxMzEuMDg3QzY5LjAyMDggMTQwLjQ1OSA4NC4yMTY4IDE0MC40NTkgOTMuNTg5NCAxMzEuMDg3TDE0My43OTQgODAuODgyMiIvPgoJPC9nPgo8L3N2Zz4K"},"displayName":"MCP Server Trigger","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"},{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1305,"icon":"file:cohere.svg","name":"@n8n/n8n-nodes-langchain.rerankerCohere","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.rerankercohere/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Rerankers"]}}},"group":"[\"transform\"]","defaults":{"name":"Reranker Cohere"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi45NiAyMy44NEMxNC4wMjY3IDIzLjg0IDE2LjE2IDIzLjc4NjcgMTkuMTQ2NyAyMi41NkMyMi42MTMzIDIxLjEyIDI5LjQ0IDE4LjU2IDM0LjQgMTUuODkzM0MzNy44NjY3IDE0LjAyNjcgMzkuMzYgMTEuNTczMyAzOS4zNiA4LjI2NjY3QzM5LjM2IDMuNzMzMzMgMzUuNjggMCAzMS4wOTMzIDBIMTEuODkzM0M1LjMzMzMzIDAgMCA1LjMzMzMzIDAgMTEuODkzM0MwIDE4LjQ1MzMgNS4wMTMzMyAyMy44NCAxMi45NiAyMy44NFoiIGZpbGw9IiMzOTU5NEQiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNi4yMTM0IDMxLjk5OTlDMTYuMjEzNCAyOC43OTk5IDE4LjEzMzQgMjUuODY2NiAyMS4xMiAyNC42Mzk5TDI3LjE0NjcgMjIuMTMzM0MzMy4yOCAxOS42MjY2IDQwIDI0LjEwNjYgNDAgMzAuNzE5OUM0MCAzNS44Mzk5IDM1Ljg0IDM5Ljk5OTkgMzAuNzIgMzkuOTk5OUgyNC4xNkMxOS43ODY3IDM5Ljk5OTkgMTYuMjEzNCAzNi40MjY2IDE2LjIxMzQgMzEuOTk5OVoiIGZpbGw9IiNEMThFRTIiLz4KPHBhdGggZD0iTTYuODggMjUuMzg2N0MzLjA5MzMzIDI1LjM4NjcgMCAyOC40ODAxIDAgMzIuMjY2N1YzMy4xNzM0QzAgMzYuOTA2NyAzLjA5MzMzIDQwLjAwMDEgNi44OCA0MC4wMDAxQzEwLjY2NjcgNDAuMDAwMSAxMy43NiAzNi45MDY3IDEzLjc2IDMzLjEyMDFWMzIuMjEzNEMxMy43MDY3IDI4LjQ4MDEgMTAuNjY2NyAyNS4zODY3IDYuODggMjUuMzg2N1oiIGZpbGw9IiNGRjc3NTkiLz4KPC9zdmc+Cg=="},"displayName":"Reranker Cohere","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]}],"categories":[{"id":40,"name":"Support Chatbot"},{"id":47,"name":"AI Chatbot"}],"image":[]}}