AI 기반 회의 연구 및 일일 아젠다 (Google 캘린더, Attio CRM 및 Slack)
고급
이것은AI Summarization, Multimodal AI분야의자동화 워크플로우로, 30개의 노드를 포함합니다.주로 If, Set, Code, Merge, Slack 등의 노드를 사용하며. AI 기반 회의 연구 및 일일 아젠다: Google 캘린더, Attio CRM 및 Slack 활용
사전 요구사항
- •Slack Bot Token 또는 Webhook URL
- •Google 계정 및 Gmail API 인증 정보
- •대상 API의 인증 정보가 필요할 수 있음
사용된 노드 (30)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"meta": {
"instanceId": "2b4a3d81eafa60e4b2dfa202fdf88e491b785e2a2a6ca005b137d831a6faa7c0",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "5a367261-b56f-49f7-a447-43f82af7c428",
"name": "메모",
"type": "n8n-nodes-base.stickyNote",
"position": [
-832,
144
],
"parameters": {
"color": 7,
"width": 696,
"height": 917,
"content": "## Research meeting attendees and prepare daily agenda in Slack\n\nThis workflow automatically researches your meeting attendees every morning and sends you a comprehensive brief in Slack with context about who you're meeting, their company, and key talking points.\n\n### Who's it for\n- Sales professionals who need quick context before meetings\n- Executives with packed calendars who need meeting preparation\n- Customer success teams managing multiple client relationships\n- Anyone who wants to be better prepared for their daily meetings\n\n### How it works\n1. **Daily Trigger**: Runs every weekday morning at 6 AM to analyze your calendar\n2. **Calendar Analysis**: Fetches all meetings for the day from Google Calendar\n3. **Attendee Research**: For each external meeting:\n - Searches your CRM (Attio) for existing contact information\n - Uses AI to research attendees via web search, Gmail history, and past meetings\n - Searches company information via Apollo.io\n - Creates new CRM records if contacts don't exist\n4. **Brief Generation**: Compiles all research into a scannable meeting brief\n5. **Slack Delivery**: Sends formatted brief to your designated Slack channel\n\n### Setup Requirements\n- Google Calendar access (OAuth2)\n- Slack workspace with bot permissions\n- Attio CRM account (optional - for contact management)\n- Apollo.io API access (optional - for company research)\n- OpenRouter API key for AI processing\n- Gmail access for email history search\n\n### How to customize\n1. **Adjust Schedule**: Change the Schedule Trigger to your preferred time\n2. **Modify Research Tools**: Add or remove research sources based on your needs\n3. **Customize Output Format**: Edit the formatting prompt in \"Format Daily Meeting Brief\"\n4. **Change Delivery Method**: Replace Slack with email, Teams, or another channel"
},
"typeVersion": 1
},
{
"id": "2409b8bd-2305-41fa-82f1-a97e68d9df43",
"name": "일정 트리거",
"type": "n8n-nodes-base.scheduleTrigger",
"notes": "Runs Monday-Friday at 6 AM",
"position": [
192,
576
],
"parameters": {
"rule": {
"interval": [
{
"field": "cronExpression",
"expression": "0 6 * * 1-5"
}
]
}
},
"notesInFlow": true,
"typeVersion": 1.2
},
{
"id": "19c5762b-ed9e-47db-80d7-0806c772a2a2",
"name": "메모1",
"type": "n8n-nodes-base.stickyNote",
"position": [
304,
352
],
"parameters": {
"width": 383.52941176470586,
"height": 145.88235294117646,
"content": "### Step 1: Calendar Integration\nFetches today's meetings from your Google Calendar. The workflow filters for external meetings (those with attendees other than yourself)."
},
"typeVersion": 1
},
{
"id": "edb6a777-cc4d-4326-9418-6b311a69e3dd",
"name": "필터 External Meetings",
"type": "n8n-nodes-base.filter",
"notes": "Keep only events with attendees",
"position": [
640,
576
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "loose"
},
"combinator": "and",
"conditions": [
{
"id": "filter-external",
"operator": {
"type": "array",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.attendees }}",
"rightValue": ""
}
]
},
"looseTypeValidation": true
},
"typeVersion": 2.2,
"alwaysOutputData": true
},
{
"id": "2f8d687c-ce54-4a8b-93d9-86ca545fcdd7",
"name": "Has External Meetings?",
"type": "n8n-nodes-base.if",
"position": [
864,
576
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "has-meetings",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.id }}",
"rightValue": 0
}
]
}
},
"typeVersion": 2.2
},
{
"id": "a9b3151a-62f3-4b74-b590-62ce0381c755",
"name": "No Meetings Message",
"type": "n8n-nodes-base.slack",
"position": [
1072,
768
],
"webhookId": "f924f962-e870-44d5-ac44-60f9ed4f49d4",
"parameters": {
"text": "Good morning! No external meetings scheduled for today. Enjoy your focus time!",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "id",
"value": "="
},
"otherOptions": {},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "I1AdBji1W6jc0rm7",
"name": "Slack account"
}
},
"typeVersion": 2.3
},
{
"id": "9404e80f-e34f-4160-bbad-b96e8526d0b1",
"name": "메모2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1184,
192
],
"parameters": {
"width": 612.3529411764707,
"height": 232.94117647058826,
"content": "### Step 2: AI Research\nFor each meeting, the AI agent researches attendees using multiple sources:\n- Web search for recent news\n- Gmail history for past interactions\n- Calendar for previous meetings\n- CRM for existing contact info\n- Apollo.io for company data"
},
"typeVersion": 1
},
{
"id": "001125d5-7aac-4aa3-a3d3-42b1f660b557",
"name": "Split Events for Individual Processing",
"type": "n8n-nodes-base.splitOut",
"position": [
1088,
480
],
"parameters": {
"include": "allOtherFields",
"options": {},
"fieldToSplitOut": "id"
},
"typeVersion": 1
},
{
"id": "f815d71c-0f8b-4221-a980-da233b22eb79",
"name": "AI 에이전트 - Meeting Research",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1568,
496
],
"parameters": {
"text": "=You are a meeting preparation assistant. Analyze this meeting and prepare comprehensive research:\n\nMeeting Details:\n- Summary: {{ $json.summary }}\n- Start: {{ $json.start.dateTime }}\n- End: {{ $json.end.dateTime }}\n- Attendees: {{ $json.attendees.filter(a => a.email !== $('User Configuration').item.json.user_email).map(a => a.email).join(', ') }}\n\nYour tasks:\n1. Research each attendee using the available tools\n2. Identify the company they work for and research the company\n3. Find any previous interactions or context\n4. Prepare key talking points and questions\n5. Identify potential goals and outcomes for this meeting\n\nProvide a comprehensive meeting preparation report.",
"options": {
"systemMessage": "You are an expert meeting preparation assistant with access to CRM, email, calendar, and company research tools. Your goal is to help the user be fully prepared for their upcoming meetings by providing comprehensive research and context."
},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "9fcd10f0-3300-4a7a-8f94-21b0a237db87",
"name": "OpenRouter Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
1312,
720
],
"parameters": {
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "bA9Ec45f0B7Bpa10",
"name": "OpenRouter"
}
},
"typeVersion": 1
},
{
"id": "42f7e6c1-6b51-42b6-af8c-cf46c4d91d94",
"name": "Search Gmail History",
"type": "n8n-nodes-base.gmailTool",
"position": [
1568,
720
],
"webhookId": "744a15aa-5415-43c6-8bb6-1142aa6b8c1d",
"parameters": {
"simple": "={{ $fromAI('Simplify', '', 'boolean') }}",
"filters": {
"q": "={{ $fromAI('Search', '', 'string') }}"
},
"options": {},
"operation": "getAll",
"returnAll": "={{ $fromAI('Return_All', '', 'boolean') }}"
},
"credentials": {
"gmailOAuth2": {
"id": "yvJI2wRBiA9DGTL4",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "be673ca9-f382-4b12-b7ec-ff562dcebde7",
"name": "Web Search 도구",
"type": "n8n-nodes-base.httpRequestTool",
"onError": "continueRegularOutput",
"position": [
1696,
720
],
"parameters": {
"url": "https://api.anthropic.com/v1/messages",
"method": "POST",
"options": {},
"jsonBody": "={{ $fromAI('JSON', '{\"model\": \"claude-sonnet-4-20250514\", \"max_tokens\": 1024, \"messages\": [{\"role\": \"user\", \"content\": \"{web_search_question}\"}], \"tools\": [{\"type\": \"web_search_20250305\", \"name\": \"web_search\", \"max_uses\": 5}]}', 'json') }}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"toolDescription": "Searches the internet for current information. Use for finding recent news, press releases, blog posts, and other public information about the company or person.",
"headerParameters": {
"parameters": [
{
"name": "anthropic-version",
"value": "2023-06-01"
},
{
"name": "content-type",
"value": "application/json"
}
]
},
"nodeCredentialType": "anthropicApi"
},
"credentials": {
"anthropicApi": {
"id": "DSzu6hecOYxA6SIs",
"name": "Anthropic account"
}
},
"typeVersion": 4.2
},
{
"id": "832369d1-242f-4a81-bc94-0de71425ed2e",
"name": "Search Attio CRM",
"type": "n8n-nodes-base.httpRequestTool",
"position": [
1824,
720
],
"parameters": {
"url": "https://api.attio.com/v2/objects/people/records/query",
"method": "POST",
"options": {},
"jsonBody": "={\"filter\": {\"email_addresses\": \"{{ $fromAI('single_email_address', 'Email address to find', 'string') }}\"}, \"limit\": 1, \"offset\": 0}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBearerAuth",
"toolDescription": "Search CRM for information on a person by email address",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpBearerAuth": {
"id": "H8ybPb8fmXzKWz50",
"name": "Attio"
}
},
"typeVersion": 4.2
},
{
"id": "31aeddca-5379-4b25-8393-84258b49e3bc",
"name": "Search Apollo Company Data",
"type": "n8n-nodes-base.httpRequestTool",
"onError": "continueRegularOutput",
"position": [
1952,
720
],
"parameters": {
"url": "https://api.apollo.io/api/v1/mixed_companies/search",
"method": "POST",
"options": {},
"jsonBody": "={{ $fromAI('JSON', '', 'json') }}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"toolDescription": "Retrieves company data including industry, employee count, revenue, and technologies used",
"headerParameters": {
"parameters": [
{
"name": "Cache-Control",
"value": "no-cache"
},
{
"name": "accept",
"value": "application/json"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "l7ce7mE7MBNIe7w2",
"name": "Notion Webhook Auth"
}
},
"typeVersion": 4.2
},
{
"id": "182e4b7c-0b87-4ee3-9d17-85751bb71c0d",
"name": "메모3",
"type": "n8n-nodes-base.stickyNote",
"position": [
2400,
144
],
"parameters": {
"width": 370.58823529411774,
"height": 176.47058823529412,
"content": "### Step 3: CRM Integration\nFor each attendee:\n- Check if they exist in your CRM\n- Create new contact records if needed\n- Add meeting preparation notes to their profile"
},
"typeVersion": 1
},
{
"id": "a052e367-d9c3-412a-be03-2ec28f0bafe6",
"name": "Clean Meeting Research Content",
"type": "n8n-nodes-base.code",
"position": [
2160,
496
],
"parameters": {
"jsCode": "const items = $input.all();\n\nreturn items.map((item, index) => {\n let content = item.json.markdown_content || item.json.output || item.json.content || '';\n \n content = content.replace(/\"/g, '');\n content = content.replace(/'/g, '');\n content = content.replace(/\\r\\n/g, '\\n');\n content = content.replace(/\\r/g, '\\n');\n content = content.trim();\n content = content.split(/\\n/).map(line => line.trim()).join('\\n');\n content = content.replace(/\\n\\s*\\n\\s*\\n/g, '\\n\\n');\n \n return {\n json: {\n ...item.json,\n cleaned_content: content\n },\n pairedItem: { item: index }\n };\n});"
},
"typeVersion": 2
},
{
"id": "62579c3f-9b3d-4345-b96b-8a13e31690f8",
"name": "Extract External Attendees",
"type": "n8n-nodes-base.set",
"position": [
2384,
336
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "22f8e8d1-b14f-47f5-ab45-4cfad5d27bbc",
"name": "attendees",
"type": "array",
"value": "={{ $('Split Events for Individual Processing').item.json.attendees.filter(a => a.email !== $('User Configuration').item.json.user_email) }}"
}
]
},
"includeOtherFields": true
},
"typeVersion": 3.4
},
{
"id": "b237a783-5952-42be-9773-5941d837d556",
"name": "Split Attendees for CRM Check",
"type": "n8n-nodes-base.splitOut",
"position": [
2672,
336
],
"parameters": {
"include": "allOtherFields",
"options": {},
"fieldToSplitOut": "attendees"
},
"typeVersion": 1
},
{
"id": "2d9f8608-8a4a-473f-b55f-c7fa191d162b",
"name": "Find Person in Attio",
"type": "n8n-nodes-base.httpRequest",
"position": [
2960,
336
],
"parameters": {
"url": "https://api.attio.com/v2/objects/people/records/query",
"method": "POST",
"options": {},
"jsonBody": "={\"filter\": {\"email_addresses\": \"{{ $json.attendees.email }}\"}, \"limit\": 1, \"offset\": 0}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBearerAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpBearerAuth": {
"id": "H8ybPb8fmXzKWz50",
"name": "Attio"
}
},
"typeVersion": 4.2
},
{
"id": "4222a379-96ff-4e54-ad0d-b65431964300",
"name": "Person Exists in CRM?",
"type": "n8n-nodes-base.if",
"position": [
3184,
336
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "person-exists",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.data[0].id.record_id }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "562e986a-6880-4c91-88c5-aa48947d72ef",
"name": "Create Person Record",
"type": "n8n-nodes-base.httpRequest",
"position": [
3408,
416
],
"parameters": {
"url": "https://api.attio.com/v2/objects/people/records",
"method": "POST",
"options": {},
"jsonBody": "={\"data\": {\"values\": {\"email_addresses\": [{\"email_address\": \"{{ $json.attendees.email }}\"}]}}}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBearerAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpBearerAuth": {
"id": "H8ybPb8fmXzKWz50",
"name": "Attio"
}
},
"typeVersion": 4.2
},
{
"id": "2f21cf2b-dda2-4cba-a364-d0a85d0c2532",
"name": "병합 CRM Results",
"type": "n8n-nodes-base.merge",
"position": [
3632,
336
],
"parameters": {},
"typeVersion": 3.2
},
{
"id": "f368504d-7fd3-4cef-af4b-5bb5bd80e4b1",
"name": "Create 노트 on Person",
"type": "n8n-nodes-base.httpRequest",
"position": [
3856,
336
],
"parameters": {
"url": "https://api.attio.com/v2/notes",
"method": "POST",
"options": {},
"jsonBody": "={\"data\": {\"parent_object\": \"people\", \"parent_record_id\": \"{{ $json.data[0].id.record_id }}\", \"title\": \"Meeting Prep\", \"content\": \"{{ $('Clean Meeting Research Content').item.json.cleaned_content.replaceAll('\\n','\\\\n') }}\", \"format\": \"markdown\"}}",
"sendBody": true,
"sendHeaders": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBearerAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpBearerAuth": {
"id": "H8ybPb8fmXzKWz50",
"name": "Attio"
}
},
"typeVersion": 4.2
},
{
"id": "222c778d-75e7-469e-8fd8-482f644726e5",
"name": "메모4",
"type": "n8n-nodes-base.stickyNote",
"position": [
2848,
800
],
"parameters": {
"width": 370.58823529411774,
"height": 137.6470588235294,
"content": "### Step 4: Brief Generation & Delivery\nAll research is compiled into a formatted meeting brief and sent to your Slack channel"
},
"typeVersion": 1
},
{
"id": "5cb71809-ea9b-49e4-a031-e151edf05981",
"name": "집계 Research Results",
"type": "n8n-nodes-base.aggregate",
"position": [
2384,
640
],
"parameters": {
"options": {},
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "output"
}
]
}
},
"typeVersion": 1
},
{
"id": "87e79d10-28e4-46a4-8e77-c13d4f034af2",
"name": "Format Daily Meeting Brief",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
2608,
640
],
"parameters": {
"text": "=Create a scannable meeting brief for my meetings today. I have {{ $json.output.length }} meetings.\n\nFor EACH meeting, use this EXACT format:\n\n*[TIME] Meeting Title*\n*Who:* [Name, Company/Role]\n*Purpose:* [2-5 sentences - why this meeting matters]\n*Key Context:* [1-2 critical facts about them/company]\n*Action:* [Your main goal for this meeting]\n*Watch For:* [One thing to pay attention to]\n\nRules:\n- Focus only on actionable intelligence\n- Be extremely concise\n- No introductions or conclusions\n\nMeeting data:\n{{ $json.output.map((m, i) => `\\n========== MEETING ${i + 1} ==========\\n${JSON.stringify(m, null, 2)}\\n========== END MEETING ${i + 1} ==========\\n`).join('\\n\\n') }}",
"batching": {},
"promptType": "define"
},
"typeVersion": 1.7
},
{
"id": "2c5ecb97-be42-4747-8389-27c58c0426f6",
"name": "OpenRouter Chat Model1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
2688,
864
],
"parameters": {
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "bA9Ec45f0B7Bpa10",
"name": "OpenRouter"
}
},
"typeVersion": 1
},
{
"id": "049bb3cf-26ac-4c2e-88cf-60f0f5de1111",
"name": "Send Daily Brief to Slack",
"type": "n8n-nodes-base.slack",
"position": [
2960,
640
],
"webhookId": "105e0e19-d9e9-4944-a9ea-587d2987cf0c",
"parameters": {
"text": "={{ $json.text }}",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "id",
"value": "="
},
"otherOptions": {},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "I1AdBji1W6jc0rm7",
"name": "Slack account"
}
},
"typeVersion": 2.3
},
{
"id": "4c574d01-0175-442b-8dd2-292d03831a4f",
"name": "Get many events",
"type": "n8n-nodes-base.googleCalendar",
"position": [
400,
576
],
"parameters": {
"options": {},
"timeMax": "={{ $today.plus({ day: 1 }) }}",
"timeMin": "={{ $today }}",
"calendar": {
"__rl": true,
"mode": "list",
"value": "harry@onetwogrowth.com",
"cachedResultName": "OneTwo Growth Studio"
},
"operation": "getAll"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "6xS7duivt7JLMnVF",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
},
{
"id": "87459aa2-afa3-4597-939c-97b30a0aa2f8",
"name": "Get many events in Google 캘린더",
"type": "n8n-nodes-base.googleCalendarTool",
"position": [
1440,
800
],
"parameters": {
"limit": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Limit', ``, 'number') }}",
"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": ""
},
"operation": "getAll"
},
"credentials": {
"googleCalendarOAuth2Api": {
"id": "6xS7duivt7JLMnVF",
"name": "Google Calendar account"
}
},
"typeVersion": 1.3
}
],
"pinData": {},
"connections": {
"4c574d01-0175-442b-8dd2-292d03831a4f": {
"main": [
[
{
"node": "Filter External Meetings",
"type": "main",
"index": 0
}
]
]
},
"Web Search Tool": {
"ai_tool": [
[
{
"node": "AI Agent - Meeting Research",
"type": "ai_tool",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "4c574d01-0175-442b-8dd2-292d03831a4f",
"type": "main",
"index": 0
}
]
]
},
"832369d1-242f-4a81-bc94-0de71425ed2e": {
"ai_tool": [
[
{
"node": "AI Agent - Meeting Research",
"type": "ai_tool",
"index": 0
}
]
]
},
"Merge CRM Results": {
"main": [
[
{
"node": "Create Note on Person",
"type": "main",
"index": 0
}
]
]
},
"562e986a-6880-4c91-88c5-aa48947d72ef": {
"main": [
[
{
"node": "Merge CRM Results",
"type": "main",
"index": 1
}
]
]
},
"2d9f8608-8a4a-473f-b55f-c7fa191d162b": {
"main": [
[
{
"node": "4222a379-96ff-4e54-ad0d-b65431964300",
"type": "main",
"index": 0
}
]
]
},
"42f7e6c1-6b51-42b6-af8c-cf46c4d91d94": {
"ai_tool": [
[
{
"node": "AI Agent - Meeting Research",
"type": "ai_tool",
"index": 0
}
]
]
},
"9fcd10f0-3300-4a7a-8f94-21b0a237db87": {
"ai_languageModel": [
[
{
"node": "AI Agent - Meeting Research",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"4222a379-96ff-4e54-ad0d-b65431964300": {
"main": [
[
{
"node": "Merge CRM Results",
"type": "main",
"index": 0
}
],
[
{
"node": "562e986a-6880-4c91-88c5-aa48947d72ef",
"type": "main",
"index": 0
}
]
]
},
"2f8d687c-ce54-4a8b-93d9-86ca545fcdd7": {
"main": [
[
{
"node": "001125d5-7aac-4aa3-a3d3-42b1f660b557",
"type": "main",
"index": 0
}
],
[
{
"node": "a9b3151a-62f3-4b74-b590-62ce0381c755",
"type": "main",
"index": 0
}
]
]
},
"2c5ecb97-be42-4747-8389-27c58c0426f6": {
"ai_languageModel": [
[
{
"node": "87e79d10-28e4-46a4-8e77-c13d4f034af2",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Filter External Meetings": {
"main": [
[
{
"node": "2f8d687c-ce54-4a8b-93d9-86ca545fcdd7",
"type": "main",
"index": 0
}
]
]
},
"Aggregate Research Results": {
"main": [
[
{
"node": "87e79d10-28e4-46a4-8e77-c13d4f034af2",
"type": "main",
"index": 0
}
]
]
},
"62579c3f-9b3d-4345-b96b-8a13e31690f8": {
"main": [
[
{
"node": "b237a783-5952-42be-9773-5941d837d556",
"type": "main",
"index": 0
}
]
]
},
"87e79d10-28e4-46a4-8e77-c13d4f034af2": {
"main": [
[
{
"node": "049bb3cf-26ac-4c2e-88cf-60f0f5de1111",
"type": "main",
"index": 0
}
]
]
},
"31aeddca-5379-4b25-8393-84258b49e3bc": {
"ai_tool": [
[
{
"node": "AI Agent - Meeting Research",
"type": "ai_tool",
"index": 0
}
]
]
},
"AI Agent - Meeting Research": {
"main": [
[
{
"node": "a052e367-d9c3-412a-be03-2ec28f0bafe6",
"type": "main",
"index": 0
}
]
]
},
"b237a783-5952-42be-9773-5941d837d556": {
"main": [
[
{
"node": "2d9f8608-8a4a-473f-b55f-c7fa191d162b",
"type": "main",
"index": 0
}
]
]
},
"a052e367-d9c3-412a-be03-2ec28f0bafe6": {
"main": [
[
{
"node": "62579c3f-9b3d-4345-b96b-8a13e31690f8",
"type": "main",
"index": 0
},
{
"node": "Aggregate Research Results",
"type": "main",
"index": 0
}
]
]
},
"Get many events in Google Calendar": {
"ai_tool": [
[
{
"node": "AI Agent - Meeting Research",
"type": "ai_tool",
"index": 0
}
]
]
},
"001125d5-7aac-4aa3-a3d3-42b1f660b557": {
"main": [
[
{
"node": "AI Agent - Meeting Research",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - AI 요약, 멀티모달 AI
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
자동화된 회의 준비
GPT-5 및 Gemini 리서치를 사용한 캘린더에서 Slack까지 Attio CRM 통해 회의 자동 준비
If
Set
Code
+
If
Set
Code
39 노드Harry Siggins
AI 요약
Gemini, Slack, Notion을 사용하여 뉴스 요약에서 AI 정보 요약을 생성
Gemini, Slack, 및 Notion을 사용하여 뉴스 브리핑에서 AI 정보 요약을 생성
Set
Code
Gmail
+
Set
Code
Gmail
19 노드Harry Siggins
기타
매일 WhatsApp 그룹 지능형 분석: GPT-4.1 분석 및 음성 메시지 변환
매일 WhatsApp 그룹 지능 분석: GPT-4.1 분석 및 음성 메시지 트랜스크립션
If
Set
Code
+
If
Set
Code
52 노드Daniel Lianes
기타
시각화 참조 라이브러리에서 n8n 노드를 탐색
可视化 참조 라이브러리에서 n8n 노드를 탐색
If
Ftp
Set
+
If
Ftp
Set
113 노드I versus AI
기타
Perplexity와 GPT를 사용하여 WordPress에 SEO 최적화 블로그 생성, 키워드와 미디어 포함
Perplexity와 GPT를 사용하여 WordPress에 SEO 최적화 블로그를 만들어 키워드와 미디어 포함
Set
Code
Limit
+
Set
Code
Limit
124 노드Paul
콘텐츠 제작
특정 도구를 사용하여 WordPress에 SEO 최적화 블로그 생성
특정 도구를 사용하여 WordPress에 SEO 최적화 블로그 생성
Set
Code
Limit
+
Set
Code
Limit
124 노드Paul
콘텐츠 제작
워크플로우 정보
난이도
고급
노드 수30
카테고리2
노드 유형18
저자
Harry Siggins
@harrysiggins-onetwogrowth외부 링크
n8n.io에서 보기 →
이 워크플로우 공유