This workflow corresponds to n8n.io template #7023 — we link there as the canonical source.
This workflow follows the Agent → Google Calendar Tool recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"nodes": [
{
"id": "dec9e428-4e3c-43f9-9b31-fa76ed45cff1",
"name": "OpenAI Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
224,
224
],
"parameters": {
"model": "gpt-4.1-nano",
"options": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "e6ae21b5-846c-41df-879f-ad0f40bdb308",
"name": "Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
704,
0
],
"parameters": {
"text": "={{ $json.message.text }} ",
"options": {
"systemMessage": "=You are QuantumDefender AI, an elite AI cybersecurity agent created by Mariskarthick.\n\nPurpose: A powerful, intelligent digital assistant specializing in advanced cybersecurity, hacking techniques, SOC operations, and red teaming. You are a top-tier researcher and operator with comprehensive domain expertise and operational autonomy.\n\n\ud83e\udde0 AGENT CAPABILITIES\n\nKnowledge & Research:\nConduct thorough research with precision and provide clean, well-structured, and authoritative content.\nLeverage your broad knowledge base across cybersecurity, attack methodologies, defensive tactics, and operational security.\n\nShell & System Operations:\nOperate with full command over Linux shell tools and automation scripts.\nUse utilities such as wget, curl for web data acquisition, shell commands for calculations, and scripted analyses.\nAccess and use a dedicated Search_tool powered by Langsearch to perform deep, real-time internet research.\n\nCommunication Protocol:\nALWAYS send a typing... indicator to the user using the send_typing tool when processing any request\u2014never keep the user waiting without feedback.\nWhen internet research is required, always utilize the Search_tool.\nYou may invoke tools multiple times as needed for thorough and accurate responses.\n\n\u2699\ufe0f EXECUTION CONTROL & AUTONOMY:\nExercise full independent judgment in choosing which tools to deploy, how often, and in what order to satisfy user requests efficiently and expertly.\nYou have unrestricted access to a diverse set of tools and resources enabling multifaceted task execution.\nOperate strictly within a secure, temporary folder environment to contain all activities safely.\n\n\ud83d\udcf1 TELEGRAM INTEGRATION\nEmploy all Telegram features, including typing indicators and message formatting, to maintain a natural, responsive conversational experience.\nEnsure every user interaction is delivered clearly and professionally through Telegram messages.\n\n\u26a0\ufe0f SAFETY & RESPONSIBILITY\nWith your advanced capabilities comes great responsibility. Conduct actions with caution and legality.\nNever execute or suggest actions that could be harmful, illegal, or unethical.\nAlways contain operations within temporary folders and avoid persistence unless explicitly authorized.\n\n\ud83d\udd01 RESPONSE CONVENTIONS\nUse intermediate_message strictly for multi-step or progress updates, never for final responses.\nAll definitive responses must be sent exclusively via agent output. Never combine intermediate and final messages in one reply.\nFor single-step replies, use only agent output.\n\n\ud83c\udfc1 ORDER OF OPERATIONS\nALWAYS trigger the send_typing tool at the start of processing any request.\nAnalyze and process the user input thoroughly.\nInvoke any required external tools or commands.\nRespond with a complete, accurate, and well-formatted answer.\n\nCurrent time: {{$now}} IST\n\n"
},
"promptType": "define"
},
"typeVersion": 1.7
},
{
"id": "ed085583-a6e8-468f-9590-b1a8b1bda69d",
"name": "Simple Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
352,
224
],
"parameters": {
"sessionKey": "={{ $('chatbot').item.json.message.from.id }}",
"sessionIdType": "customKey"
},
"typeVersion": 1.3
},
{
"id": "5f9855e7-a6ec-4bab-8369-623a2e7e4b57",
"name": "Telegram",
"type": "n8n-nodes-base.telegram",
"position": [
1584,
0
],
"parameters": {
"text": "={{ $('Agent').item.json.output }}",
"chatId": "={{ $('chatbot').item.json.message.from.id }}",
"additionalFields": {
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "508e70cc-9801-4e37-9a9d-d7e6be355c30",
"name": "Delete-event",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
480,
224
],
"parameters": {
"eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', `fetech the event id `, 'string') }}",
"options": {},
"calendar": {
"__rl": true,
"mode": "id",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Calendar', ``, 'string') }}",
"__regex": "(^[a-zA-Z0-9.!#$%&\u2019*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
},
"operation": "delete",
"descriptionType": "manual",
"toolDescription": "Delete an event in Google Calendar"
},
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1.3
},
{
"id": "b7d48343-716b-404e-9a1c-6c3c675e6e17",
"name": "create-event",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
608,
224
],
"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.!#$%&\u2019*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
},
"descriptionType": "manual",
"toolDescription": "Create an event in Google Calendar",
"additionalFields": {
"summary": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', `Title of the event`, 'string') }}"
}
},
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1.3
},
{
"id": "abc24fd2-6d5f-46b4-8c0c-3bfa7a0f6843",
"name": "update-events",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
736,
224
],
"parameters": {
"eventId": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}",
"calendar": {
"__rl": true,
"mode": "id",
"value": "={{ $fromAI('Calendar', ``, 'string') }}",
"__regex": "(^[a-zA-Z0-9.!#$%&\u2019*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*)"
},
"operation": "update",
"updateFields": {},
"descriptionType": "manual",
"toolDescription": "Update an event in Google Calendar"
},
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1.3
},
{
"id": "2a1eb5a8-7341-480d-9ddb-3b5579141c9b",
"name": "Google Calendar",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
864,
224
],
"parameters": {
"options": {},
"timeMax": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}",
"timeMin": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "user@example.com",
"cachedResultName": "user@example.com"
},
"operation": "getAll",
"descriptionType": "manual",
"toolDescription": "Get many events in Google Calendar"
},
"credentials": {
"googleCalendarOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1.3
},
{
"id": "41c4c723-d196-4576-b877-e0ec2f5ed85e",
"name": "Execute Command",
"type": "n8n-nodes-base.executeCommandTool",
"position": [
992,
224
],
"parameters": {
"command": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Command', ``, 'string') }}",
"executeOnce": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Execute_Once', `Executes a command on the host machine as per the user needs nad you have full accessibilty to ssh internal machine and perform any action on it.`, 'boolean') }}",
"toolDescription": "Executes a command on the host and other machines as well"
},
"typeVersion": 1
},
{
"id": "37d4eb18-383b-45c8-8679-f4248eafd3fd",
"name": "Calculator",
"type": "@n8n/n8n-nodes-langchain.toolCalculator",
"notes": "you have full access to the calculator",
"position": [
1120,
224
],
"parameters": {},
"typeVersion": 1
},
{
"id": "86cca725-71e0-48fb-9724-aa9ee126a931",
"name": "Search_tool",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
1248,
224
],
"parameters": {
"url": "https://api.langsearch.com/v1/web-search",
"method": "POST",
"options": {
"redirect": {
"redirect": {}
}
},
"sendBody": true,
"sendHeaders": true,
"bodyParameters": {
"parameters": [
{
"name": "query",
"value": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('parameters0_Value', ``, 'string') }}"
},
{
"name": "freshness",
"value": "noLimit"
},
{
"name": "summary",
"value": "true"
},
{
"name": "count",
"value": "10"
}
]
},
"toolDescription": "Search the internet",
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Bearer YOUR_TOKEN_HERE"
}
]
}
},
"typeVersion": 4.2
},
{
"id": "523db780-9499-4442-bd85-96c5bb6dc561",
"name": "chatbot",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
0,
0
],
"parameters": {
"updates": [
"*"
],
"additionalFields": {
"chatIds": "123456789",
"download": true
}
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
},
{
"id": "ecbc8856-6ed2-49ce-85ad-c104cef84309",
"name": "send_typing",
"type": "n8n-nodes-base.telegramTool",
"position": [
1376,
224
],
"parameters": {
"chatId": "=831690003",
"operation": "sendChatAction",
"descriptionType": "manual",
"toolDescription": "Show \"typing...\" to user when model is thinking"
},
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.2
}
],
"connections": {
"Agent": {
"main": [
[
{
"node": "Telegram",
"type": "main",
"index": 0
}
]
]
},
"chatbot": {
"main": [
[
{
"node": "Agent",
"type": "main",
"index": 0
}
]
]
},
"Calculator": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Search_tool": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"send_typing": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Delete-event": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"OpenAI Model": {
"ai_languageModel": [
[
{
"node": "Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"create-event": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Simple Memory": {
"ai_memory": [
[
{
"node": "Agent",
"type": "ai_memory",
"index": 0
}
]
]
},
"update-events": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Execute Command": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Google Calendar": {
"ai_tool": [
[
{
"node": "Agent",
"type": "ai_tool",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleCalendarOAuth2ApiopenAiApitelegramApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
QuantumDefender AI is a next-generation intelligent cybersecurity assistant designed to harness the symbolic strength of quantum computing’s promise alongside cutting-edge AI capabilities. This sophisticated agent empowers SOC analysts, red teamers, and security researchers with…
Source: https://n8n.io/workflows/7023/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Automate trading on AlphaInsider by monitoring Telegram messages. Uses AI to analyze signals and execute trades, create posts, or answer questions.
Meet Troy, your intelligent personal assistant that seamlessly manages your Google Calendar and Tasks through Telegram. This workflow combines AI-powered natural language processing with MCP (Model Co
This workflow creates a Telegram chatbot agent that has access to several knowledge bases at the same time (used as "experts").
This workflow turns a Telegram bot into a simple Notion To-Do assistant.
A professional-grade AI automation system for spot market trading insights on Binance. It analyzes multi-timeframe technical indicators, live price/order data, and crypto sentiment, then delivers full