{"workflow":{"id":13269,"name":"Design UI projects 🎨🖼️ with Google Stitch via Telegram using MCP and Gemini AI","views":3360,"recentViews":9,"totalViews":3360,"createdAt":"2026-02-09T17:13:15.521Z","description":"This workflow implements an **AI-powered design and prototyping assistant** that integrates **Telegram**, **Google Gemini**, and **Google Stitch (MCP)** to enable conversational UI generation and project management.\n\nSupported actions include:\n\n* Creating new design projects\n* Retrieving existing projects\n* Listing projects and screens\n* Fetching individual screens\n* Generating new UI screens directly from text descriptions\n\n---\n\n### Key Advantages\n\n#### 1. ✅ Conversational Design Workflow\n\nDesign and UI prototyping can be driven entirely through natural language. Users can create screens, explore layouts, or manage projects simply by chatting, without opening design tools.\n\n#### 2. ✅ Tight Integration with Google Stitch\n\nBy leveraging the Stitch MCP API, the workflow provides direct access to structured design capabilities such as screen generation, project management, and UI exploration, avoiding manual API calls or custom scripting.\n\n#### 3. ✅ Intelligent Tool Selection\n\nThe AI agent does not blindly call APIs. It first analyzes the user request, determines the required level of fidelity and intent, and then selects the most appropriate Stitch function or combination of functions.\n\n#### 4. ✅ Multi-Channel Support\n\nThe workflow supports both generic chat triggers and Telegram, making it flexible for internal tools, demos, or production chatbots.\n\n#### 5. ✅ Security and Access Control\n\nTelegram access is restricted to a specific user ID, and execution only happens when a dedicated command is used. This prevents accidental or unauthorized usage.\n\n#### 6. ✅ Context Awareness with Memory\n\nThe inclusion of conversational memory allows the agent to maintain context across interactions, enabling iterative design discussions rather than isolated commands.\n\n#### 7. ✅ Production-Ready Output Formatting\n\nResponses are automatically converted into Telegram-compatible HTML, ensuring clean, readable, and well-formatted messages without manual post-processing.\n\n#### 8. ✅ Extensible and Modular Architecture\n\nThe workflow is highly modular: additional Stitch tools, AI models, or communication channels can be added with minimal changes, making it future-proof and easy to extend.\n\n---\n\n\n### **How It Works**\n\nThis workflow functions as a Telegram-powered AI agent that leverages Google Stitch's MCP (Model Context Protocol) tools for design, UI generation, and product prototyping. It combines conversational AI, tool-based actions, and web search capabilities.\n\n1.  **Trigger & Authorization**: The workflow is activated by an incoming message from a configured Telegram bot. A code node first checks the sender's Telegram User ID against a hardcoded value (`xxx`) to restrict access. Only authorized users can proceed.\n2.  **Command Parsing**: An `IF` node filters messages, allowing the agent to proceed only if the message text starts with the command `/stitch`. This ensures the agent is only invoked intentionally.\n3.  **Query Preparation**: The `/stitch` prefix is stripped from the message text, and the cleaned query, along with the user's ID (used as a session identifier), is passed to the main agent.\n4.  **AI Agent Execution**: The core \"Google Stitch Agent\" node is an LLM-powered agent (using Google Gemini) equipped with:\n    *   **Tools**: Access to several Google Stitch MCP functions (`create_project`, `get_project`, `list_projects`, `list_screens`, `get_screen`, `generate_screen_from_text`) and a Perplexity web search tool.\n    *   **Memory**: A conversation buffer window to maintain context within a session.\n    *   **System Prompt**: Instructs the agent to intelligently select and use the appropriate Stitch tools based on the user's design-related request (e.g., generating screens from text, managing projects). It is directed to use web search when necessary for additional context.\n5.  **Response Processing & Delivery**: The agent's text output (in Markdown) is passed through another LLM chain (\"From MD to HTML\") that converts it to Telegram-friendly HTML. Finally, the formatted response is sent back to the user via the Telegram bot.\n\n---\n\n### **Set Up Steps**\n\nTo make this workflow operational, you need to configure credentials and update specific nodes:\n\n1.  **Telegram Bot Configuration**:\n    *   In the **\"Code\"** node (`id: 08bfae9e...`), replace `xxx` in the condition `$input.first().json.message.from.id !== xxx` with your actual Telegram User ID. This ensures only you can trigger the agent.\n    *   Ensure the **\"Telegram Trigger\"** and **\"Send a text message\"** nodes have valid Telegram Bot credentials configured.\n\n2.  **Google Stitch API Setup**:\n    *   Obtain an API key from [Google Stitch](https://stitch.withgoogle.com/docs/mcp/setup).\n    *   Configure the **HTTP Header Auth** credential named **\"Google Stitch\"** (referenced by all MCP tool nodes: `Create Project`, `Get Project`, etc.).\n    *   Set the Header Auth with:\n        *   **Name**: `X-Goog-Api-Key`\n        *   **Value**: Your actual Google Stitch API Key (`YOUR-API-KEY`).\n\n3.  **AI Model & Tool Credentials**:\n    *   Verify the credentials for the **Google Gemini Chat Model** nodes are correctly set up for API access.\n    *   Verify the credentials for the **Perplexity API** node (\"Search on web\") are configured if web search functionality is required.\n\n4.  **Activation**:\n    *   Once all credentials are configured, set the workflow to **Active**. The Telegram webhook will be registered, and the workflow will listen for authorized messages containing the `/stitch` command.\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":"Q2jXWo-iO_eefuMxGrDYq","meta":{"instanceId":"a4bfc93e975ca233ac45ed7c9227d84cf5a2329310525917adaf3312e10d5462","templateCredsSetupCompleted":true},"name":"MCP Google Stitch Agent via Telegram","tags":[],"nodes":[{"id":"58ca337c-08fd-4cba-80e6-06c006fe8fef","name":"When chat message received","type":"@n8n/n8n-nodes-langchain.chatTrigger","position":[-256,-144],"webhookId":"49915063-b3ec-4612-92ed-357b7832288d","parameters":{"options":{}},"typeVersion":1.4},{"id":"bb3fd9e0-7a46-4ae2-b503-a3d5e7a541e4","name":"Google Gemini Chat Model","type":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","position":[-16,-96],"parameters":{"options":{}},"credentials":{"googlePalmApi":{"id":"AaNPKXAphyMzRgfA","name":"Google Gemini(PaLM) (Eure)"}},"typeVersion":1},{"id":"84cb4bde-15b3-4284-b08b-34e468ce4b09","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[240,-128],"parameters":{"color":7,"width":528,"height":496,"content":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n## STEP 2 - Google Stitch\n[Get your API Key](https://stitch.withgoogle.com/docs/mcp/setup) and set Header Auth with name: \"X-Goog-Api-Key\" and value \"YOUR-API-KEY\"\""},"typeVersion":1},{"id":"da184335-9adc-423a-8d23-55fd63c4cc3d","name":"Simple Memory","type":"@n8n/n8n-nodes-langchain.memoryBufferWindow","position":[128,-80],"parameters":{},"typeVersion":1.3},{"id":"2d8f7450-9cc1-4dac-8145-2b598258f801","name":"Create Project","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[304,-64],"parameters":{"include":"selected","options":{"timeout":600000},"endpointUrl":"https://stitch.googleapis.com/mcp","includeTools":["create_project"],"authentication":"headerAuth"},"credentials":{"httpHeaderAuth":{"id":"KC1sCYCgzDHYpsDx","name":"Google Stitch"}},"typeVersion":1.2},{"id":"832b9197-cdd1-463e-a84a-eac1e981f603","name":"Get Project","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[432,-64],"parameters":{"include":"selected","options":{"timeout":600000},"endpointUrl":"https://stitch.googleapis.com/mcp","includeTools":["get_project"],"authentication":"headerAuth"},"credentials":{"httpHeaderAuth":{"id":"KC1sCYCgzDHYpsDx","name":"Google Stitch"}},"typeVersion":1.2},{"id":"59607d6a-9cbf-44bc-8a0f-b7621378a824","name":"List projects","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[560,-64],"parameters":{"include":"selected","options":{"timeout":600000},"endpointUrl":"https://stitch.googleapis.com/mcp","includeTools":["list_projects"],"authentication":"headerAuth"},"credentials":{"httpHeaderAuth":{"id":"KC1sCYCgzDHYpsDx","name":"Google Stitch"}},"typeVersion":1.2},{"id":"83cf7b04-6c37-4317-8758-f84f41aa419a","name":"List screen","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[304,112],"parameters":{"include":"selected","options":{"timeout":600000},"endpointUrl":"https://stitch.googleapis.com/mcp","includeTools":["list_screens"],"authentication":"headerAuth"},"credentials":{"httpHeaderAuth":{"id":"KC1sCYCgzDHYpsDx","name":"Google Stitch"}},"typeVersion":1.2},{"id":"f24d9ca5-3999-4a73-92df-789e28038e28","name":"Get screen","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[432,112],"parameters":{"include":"selected","options":{"timeout":600000},"endpointUrl":"https://stitch.googleapis.com/mcp","includeTools":["get_screen"],"authentication":"headerAuth"},"credentials":{"httpHeaderAuth":{"id":"KC1sCYCgzDHYpsDx","name":"Google Stitch"}},"typeVersion":1.2},{"id":"d4ddf52d-9a66-40cc-b84d-0fe58741a33c","name":"Generate Screen","type":"@n8n/n8n-nodes-langchain.mcpClientTool","position":[560,112],"parameters":{"include":"selected","options":{"timeout":600000},"endpointUrl":"https://stitch.googleapis.com/mcp","includeTools":["generate_screen_from_text"],"authentication":"headerAuth"},"credentials":{"httpHeaderAuth":{"id":"KC1sCYCgzDHYpsDx","name":"Google Stitch"}},"typeVersion":1.2},{"id":"1d3c9bb2-6201-4fa0-9398-d893bb4e7ea9","name":"Search on web","type":"n8n-nodes-base.perplexityTool","position":[832,-80],"parameters":{"options":{},"messages":{"message":[{"content":"={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('message0_Text', ``, 'string') }}"}]},"requestOptions":{}},"credentials":{"perplexityApi":{"id":"M1wkKDoWmGD6nuRy","name":"Perplexity account"}},"typeVersion":1},{"id":"08bfae9e-bfb1-4495-9482-fad2118aa032","name":"Code","type":"n8n-nodes-base.code","position":[-928,-336],"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":"1b6f04f2-4e75-48be-b342-d70dbf2f175a","name":"Search with MCP?","type":"n8n-nodes-base.if","position":[-704,-336],"parameters":{"options":{},"conditions":{"options":{"version":2,"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"9c5ea127-cbbb-4304-8a93-b47b5c09b837","operator":{"type":"string","operation":"startsWith"},"leftValue":"={{ $json.message.text }}","rightValue":"/stitch"}]}},"typeVersion":2.2},{"id":"80599982-490d-4160-ba71-2cec80fb02e4","name":"Get Message","type":"n8n-nodes-base.telegramTrigger","position":[-1152,-336],"webhookId":"07c09a64-758b-40ea-8c24-d999048781c3","parameters":{"updates":["message"],"additionalFields":{}},"credentials":{"telegramApi":{"id":"rQ5q95W7uKesMDx4","name":"Telegram account Fastewb"}},"typeVersion":1.1},{"id":"12d0b4dc-9204-4324-997c-020301886860","name":"Sticky Note8","type":"n8n-nodes-base.stickyNote","position":[-1024,-464],"parameters":{"color":7,"width":720,"height":292,"content":"## STEP 1 - Set Telegram Bot\n\nSet your Telegram ID here. the search only occurs when the command \"/stitch\" is present in the message"},"typeVersion":1},{"id":"7ad2cba9-a301-4960-bd2d-8498671c1fec","name":"Get Text","type":"n8n-nodes-base.set","position":[-480,-336],"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":"fa76c04c-1624-4c8a-a0cd-80b0660ac2f4","name":"Send a text message","type":"n8n-nodes-base.telegram","position":[1392,-512],"webhookId":"160197ce-5576-4437-8ee6-11796f3ce192","parameters":{"text":"={{ $json.text }}","chatId":"={{ $('Get Message').item.json.message.from.id }}","additionalFields":{"parse_mode":"HTML"}},"credentials":{"telegramApi":{"id":"rQ5q95W7uKesMDx4","name":"Telegram account Fastewb"}},"typeVersion":1.2},{"id":"725d1d2f-fabd-4c6e-8a84-c0619412e662","name":"Google Gemini Chat Model1","type":"@n8n/n8n-nodes-langchain.lmChatGoogleGemini","position":[1056,-320],"parameters":{"options":{}},"credentials":{"googlePalmApi":{"id":"0p34rXqIqy8WuoPg","name":"Google Gemini(PaLM) Api account"}},"typeVersion":1},{"id":"dd7b7f1c-c2d2-4d34-958c-ade116e05752","name":"Google Stitch Agent","type":"@n8n/n8n-nodes-langchain.agent","position":[256,-336],"parameters":{"options":{"systemMessage":"=You are an AI agent with access to the Google Stitch MCP tool.\nYour task is to intelligently use Stitch to support design, UI generation, and product prototyping workflows.\n\nBefore taking any action, do the following:\n\nInspect and enumerate all available functions exposed by the Google Stitch MCP tool, including (but not limited to):\n\nUI or layout generation\n\nScreen or component creation\n\nDesign system or style token handling\n\nUX flow generation\n\nWireframe or mockup synthesis\n\nAny transformation, export, or validation capabilities\n\nEvaluate which function or combination of functions best fits the user’s request, considering:\n\nLevel of fidelity (wireframe vs high-fidelity UI)\n\nPlatform target (web, mobile, desktop)\n\nDesign intent (exploration, iteration, production-ready)\n\nInput constraints (text-only prompt, structured data, existing components)\n\nIf the request is ambiguous or underspecified, make reasonable assumptions and clearly state them before calling the tool.\n\nCall the Google Stitch MCP tool using the most appropriate function(s) and provide:\n\nClear, structured inputs\n\nDescriptive naming for screens, components, and flows\n\nConsistent design intent across outputs\n\nAfter the tool call:\n\nSummarize what was generated\n\nExplain which Stitch functions were used and why\n\nSuggest possible follow-up actions or refinements using other available Stitch capabilities\n\nConstraints\n\nDo not hallucinate Stitch features that are not exposed by the MCP tool.\n\nPrefer modular, reusable UI and design outputs.\n\nOptimize for clarity, usability, and extensibility.\n\nAct as a design-aware AI agent: pragmatic, structured, and intentional in how you use Google Stitch.\n\nUse search on web tool in necessary"}},"typeVersion":3.1},{"id":"37dd1c91-74f7-4fdd-8fa2-0c9d97f76766","name":"From MD to HTML","type":"@n8n/n8n-nodes-langchain.chainLlm","position":[1056,-512],"parameters":{"text":"={{ $json.output }}","batching":{},"messages":{"messageValues":[{"message":"Convert this text from markdown to html format for telegram message.\n\nWithout ```html\\n and \\n```...only html for telegram.\n\nTelegram supports a limited set of HTML tags including <b>, <strong>, <i>, <em>, <u>, <ins>, <s>, <strike>, <code>, <pre>, and <a>. "}]},"promptType":"define"},"typeVersion":1.9},{"id":"e9e6cfa0-2340-4b8e-baa7-ac69bde3b5aa","name":"Clean query","type":"n8n-nodes-base.code","position":[-96,-336],"parameters":{"jsCode":"for (const item of $input.all()) {\n  const originalText = item.json.chatInput;\n\n  const query = originalText.replace(\"/stitch \", \"\");\n\n  item.json.chatInput = query;\n  item.json.sessionId = item.json.sessionId;\n}\n\nreturn $input.all();\n"},"typeVersion":2},{"id":"25a65c54-bee4-4e63-a2b7-1788427fcd77","name":"is Telegram?","type":"n8n-nodes-base.if","position":[768,-336],"parameters":{"options":{"ignoreCase":true},"conditions":{"options":{"version":3,"leftValue":"","caseSensitive":false,"typeValidation":"strict"},"combinator":"and","conditions":[{"id":"a57cbda0-cd51-4842-9747-19b0415a96c9","operator":{"type":"boolean","operation":"true","singleValue":true},"leftValue":"={{ $('Get Message').isExecuted }}","rightValue":""}]}},"typeVersion":2.3},{"id":"8b8a2d45-29b8-440e-ae01-ee4e8ab3a8d3","name":"Sticky Note9","type":"n8n-nodes-base.stickyNote","position":[1008,-624],"parameters":{"color":7,"width":672,"height":452,"content":"## STEP 3- Send Response\n\nSet response message for Telegram and send it"},"typeVersion":1},{"id":"42bbb0f3-0e2e-4bfb-8f14-4160b7b7d378","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[-1024,-1104],"parameters":{"width":704,"height":592,"content":"## AI-powered Google Stitch Design Agent via Telegram using MCP and Gemini\nThis workflow implements an **AI-powered design and prototyping assistant** that integrates **Telegram**, **Google Gemini**, and **Google Stitch (MCP)** to enable conversational UI generation and project management.\n\n### **How it works**\n\nThis workflow acts as a Telegram-based AI design assistant that uses Google Gemini as an LLM and Google Stitch MCP tools to manage design projects and generate UI screens from natural language. Incoming Telegram messages are authorized by user ID and filtered to only run when the `/stitch` command is used. The cleaned user query is passed to an AI agent with conversational memory, which analyzes intent and selectively calls Stitch MCP functions such as project creation, screen listing, or UI generation. The agent can also use web search when additional context is needed. Responses are converted from Markdown to Telegram-compatible HTML before being sent back to the user.\n\n### **Setup steps**\n\nConfigure Telegram access by setting your Telegram User ID in the authorization Code node and ensuring bot credentials are valid for both trigger and response nodes. Set up Google Stitch by creating an API key and configuring an HTTP Header Auth credential with `X-Goog-Api-Key`, which is shared across all Stitch MCP tool nodes. Verify credentials for the Google Gemini chat model and the Perplexity web search tool if used. After all credentials are in place, activate the workflow so the Telegram webhook is registered and the agent can respond to `/stitch` commands.\n"},"typeVersion":1},{"id":"37dcf1d8-119b-4e2b-99f9-4159ad3e5931","name":"Sticky Note10","type":"n8n-nodes-base.stickyNote","position":[-288,-1248],"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":{"callerPolicy":"workflowsFromSameOwner","timeSavedMode":"fixed","availableInMCP":false,"executionOrder":"v1","executionTimeout":3600},"versionId":"3c8415cf-3c87-42bf-b0fa-4eee3c9ecbfa","connections":{"Code":{"main":[[{"node":"Search with MCP?","type":"main","index":0}]]},"Get Text":{"main":[[{"node":"Clean query","type":"main","index":0}]]},"Get screen":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"Clean query":{"main":[[{"node":"Google Stitch Agent","type":"main","index":0}]]},"Get Message":{"main":[[{"node":"Code","type":"main","index":0}]]},"Get Project":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"List screen":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"is Telegram?":{"main":[[{"node":"From MD to HTML","type":"main","index":0}]]},"List projects":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"Search on web":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"Simple Memory":{"ai_memory":[[{"node":"Google Stitch Agent","type":"ai_memory","index":0}]]},"Create Project":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"From MD to HTML":{"main":[[{"node":"Send a text message","type":"main","index":0}]]},"Generate Screen":{"ai_tool":[[{"node":"Google Stitch Agent","type":"ai_tool","index":0}]]},"Search with MCP?":{"main":[[{"node":"Get Text","type":"main","index":0}]]},"Google Stitch Agent":{"main":[[{"node":"is Telegram?","type":"main","index":0}]]},"Google Gemini Chat Model":{"ai_languageModel":[[{"node":"Google Stitch Agent","type":"ai_languageModel","index":0}]]},"Google Gemini Chat Model1":{"ai_languageModel":[[{"node":"From MD to HTML","type":"ai_languageModel","index":0}]]},"When chat message received":{"main":[[{"node":"Google Stitch Agent","type":"main","index":0}]]}}},"lastUpdatedBy":29,"workflowInfo":{"nodeCount":25,"nodeTypes":{"n8n-nodes-base.if":{"count":2},"n8n-nodes-base.set":{"count":1},"n8n-nodes-base.code":{"count":2},"n8n-nodes-base.telegram":{"count":1},"n8n-nodes-base.stickyNote":{"count":5},"n8n-nodes-base.perplexityTool":{"count":1},"@n8n/n8n-nodes-langchain.agent":{"count":1},"n8n-nodes-base.telegramTrigger":{"count":1},"@n8n/n8n-nodes-langchain.chainLlm":{"count":1},"@n8n/n8n-nodes-langchain.chatTrigger":{"count":1},"@n8n/n8n-nodes-langchain.mcpClientTool":{"count":6},"@n8n/n8n-nodes-langchain.lmChatGoogleGemini":{"count":2},"@n8n/n8n-nodes-langchain.memoryBufferWindow":{"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":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":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":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":1123,"icon":"fa:link","name":"@n8n/n8n-nodes-langchain.chainLlm","codex":{"data":{"alias":["LangChain"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.chainllm/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Chains","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"Basic LLM Chain","color":"#909298"},"iconData":{"icon":"link","type":"icon"},"displayName":"Basic LLM Chain","typeVersion":2,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1163,"icon":"fa:database","name":"@n8n/n8n-nodes-langchain.memoryBufferWindow","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorybufferwindow/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Memory"],"Memory":["For beginners"]}}},"group":"[\"transform\"]","defaults":{"name":"Simple Memory"},"iconData":{"icon":"database","type":"icon"},"displayName":"Simple Memory","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1247,"icon":"fa:comments","name":"@n8n/n8n-nodes-langchain.chatTrigger","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chattrigger/"}]},"categories":["Core Nodes","Langchain"]}},"group":"[\"trigger\"]","defaults":{"name":"When chat message received"},"iconData":{"icon":"comments","type":"icon"},"displayName":"Chat Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"},{"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":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"}]}],"categories":[{"id":31,"name":"Content Creation"},{"id":47,"name":"AI Chatbot"}],"image":[]}}