Du hoppar in på ett externt samtal och inser att du inte har förberett någonting. Ingen kontext om bolaget, ingen aning om vem deltagaren är, och nu panikskiftar du mellan flikar med två minuter kvar.
Account Executives känner av det när pipen är full. Customer Success-leads råkar ut för det under förnyelser som ligger rygg i rygg. Grundare drabbas också, ärligt talat, eftersom varje samtal “kan vara viktigt”. Den här kalenderbrief-automationen ger dig en privat mötesbrief inne i Google Kalender, så att du kliver in påläst utan att behöva göra researchen själv.
Nedan ser du hur arbetsflödet identifierar externa möten, hämtar enrichment via MadKudu och använder OpenAI för att skriva en korrekt formaterad sammanfattning som sparas precis bredvid mötet.
Så fungerar den här automationen
Hela n8n-arbetsflödet, från trigger till slutlig output:
n8n Workflow Template: Google Calendar + OpenAI: mötesbriefs i dina händelser
flowchart LR
subgraph sg0["Schedule Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Trigger", pos: "b", h: 48 }
n1@{ icon: "mdi:location-exit", form: "rounded", label: "Get many events", pos: "b", h: 48 }
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Calendar Events", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Keep meetings with external ..", pos: "b", h: 48 }
n4@{ icon: "mdi:robot", form: "rounded", label: "AI Agent - Research Attendees", pos: "b", h: 48 }
n5@{ icon: "mdi:location-exit", form: "rounded", label: "Send summary as event", pos: "b", h: 48 }
n6@{ icon: "mdi:wrench", form: "rounded", label: "MadKudu MCP", pos: "b", h: 48 }
n7@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Model", pos: "b", h: 48 }
n6 -.-> n4
n7 -.-> n4
n1 --> n2
n0 --> n1
n2 --> n3
n4 --> n5
n3 --> n4
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n4 ai
class n7 aiModel
class n6 ai
class n3 decision
Problemet: mötesförberedelser stjäl tid (och fokus)
Externa möten ser enkla ut i kalendern, men det är i förberedelserna tiden försvinner. Du öppnar inbjudan, kopierar namn till Google, försöker matcha personen till en CRM-post, skummar LinkedIn och letar sedan efter anteckningar som teamet lämnat i den senaste tråden. Har du tur hittar du något användbart. Har du otur går du in kall och lägger de första tio minuterna på att ställa frågor du redan borde kunna. Det är inte bara pinsamt. Det kan kosta affärer, förnyelser och momentum.
Friktionen bygger på.
- Varje möte behöver “bara några minuter” av research, vilket blir ungefär en timme om dagen när kalendern fylls.
- Interna möten behöver ingen enrichment, men de skräpar ändå ner din förberedelserutin eftersom du manuellt skannar allt.
- Kontext finns på för många ställen (CRM, kalkylark, gamla mejl), så du missar den eller slösar tid på att sy ihop den.
- Kvaliteten på förberedelserna varierar med humör och tid, så du blir inkonsekvent i de samtal som betyder mest.
Lösningen: privata AI-briefar sparade i din kalender
Det här arbetsflödet gör kalendern till platsen där möteskontext faktiskt bor. Varje timme kontrollerar n8n din Google Kalender efter kommande händelser och tittar på deltagarlistan. Om mötet är endast internt (baserat på ditt företags e-postdomän) hoppar det över och går vidare. Om det finns minst en extern deltagare skickar arbetsflödet deltagar- och företagsdetaljer till MadKudu för enrichment och använder sedan en OpenAI-chattmodell för att sammanfatta det som är relevant. Till sist skapar det en privat sammanfattningshändelse i Google Kalender så att briefen ligger precis bredvid mötet, synlig bara för dig.
Arbetsflödet startar med en schemalagd timtrigger och en hämtning från Google Kalender. Sedan delar det upp händelser till enskilda poster, filtrerar fram externa deltagare och lämnar de mötena till en AI-“researcher” som anropar MadKudu och formaterar den slutliga briefen. Outputen blir en ny privat kalenderpost som innehåller sammanfattningen, så att du kan skumma den precis innan samtalet.
Det här får du: automation vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du har 12 externa möten under en vecka. En snabb, “ansvarsfull” förberedelse innebär ofta att öppna inbjudan, kolla upp deltagaren, kontrollera företaget och skanna CRM-anteckningar, vilket är kanske 10 minuter per möte. Det är ungefär 2 timmar i veckan, och det är den typen av arbete som spräcker ditt fokus. Med den här automationen gör du ingenting utöver att hålla kalendern korrekt; arbetsflödet kontrollerar varje timme, genererar briefar automatiskt och du skummar dem på under en minut precis innan varje samtal.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Google Kalender för att läsa händelser och skapa brief-händelser
- MadKudu för enrichment av deltagare och företag
- OpenAI API-uppgifter (hämtas i din OpenAI-dashboard)
Kunskapsnivå: Nybörjare. Du kopplar konton, sätter några variabler (domän, API-nyckel) och testar med en riktig händelse.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
En timvis kalenderkontroll drar igång allt. n8n kör på en schematrigger och hämtar kommande händelser från din Google Kalender, så att du inte är beroende av att någon “kommer ihåg att förbereda sig”.
Händelser delas upp och granskas för externa deltagare. Arbetsflödet delar möten i enskilda objekt och filtrerar bort endast interna inbjudningar genom att jämföra deltagarnas e-postadresser med din företagsdomän.
AI-research och sammanfattning sker i mitten. För externa möten samlar en AI Agent enrichment via verktyget MadKudu MCP och använder sedan OpenAI-chattmodellen för att skapa en brief som faktiskt går att läsa precis innan ett samtal.
Briefen sparas tillbaka till Google Kalender. En ny privat “sammanfattningshändelse” skapas så att möteskontexten hamnar på samma ställe som du redan tittar, utan att skräpa ner den ordinarie inbjudan för övriga deltagare.
Du kan enkelt ändra triggerfrekvensen för att kontrollera oftare eller mer sällan beroende på dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera den schemalagda triggern
Ställ in arbetsflödet så att det körs varje timme så att kommande möten skannas och förbereds automatiskt.
- Lägg till noden Scheduled Hourly Trigger.
- Ställ in schemaregeln till timvis med standardkonfigurationen (interval →
hours). - Koppla Scheduled Hourly Trigger till Fetch Calendar Events.
Steg 2: Anslut Google Calendar
Hämta kommande händelser och skapa en sammanfattande händelse i samma kalender.
- Öppna Fetch Calendar Events och ställ in Operation till
getAll. - Ställ in Time Max till
{{ $now.plus({ hour: 1 }) }}. - Välj kalender i Calendar (exempel:
[email protected]). - Inloggningsuppgifter krävs: Anslut era googleCalendarOAuth2Api-uppgifter i Fetch Calendar Events.
- I Create Summary Event ställer ni in Start till
{{ $('Filter External Attendees').item.json.start.dateTime }}och End till{{ $('Filter External Attendees').item.json.end.dateTime }}. - Ställ in Summary till
Prep meeting {{ $('Filter External Attendees').item.json.summary }}och Description till{{ $json.output }}. - Inloggningsuppgifter krävs: Anslut era googleCalendarOAuth2Api-uppgifter i Create Summary Event.
Steg 3: Sätt upp händelsebearbetning och filtrering
Dela upp inkommande händelser och filtrera fram möten som inkluderar externa deltagare.
- I Split Event Records ställer ni in Field To Split Out till
idoch Include tillallOtherFields. - Koppla Fetch Calendar Events → Split Event Records → Filter External Attendees.
- I Filter External Attendees behåller ni första villkoret som Left Value
{{ $('Split Event Records').item.json.attendees }}med operatorn Length Greater Than och Right Value1. - Ställ in det andra villkoret Left Value till
{{ $json.attendees.some(a => !a.email.includes('@'+$vars.my_company_domain)) }}med operatorn True.
$vars.my_company_domain är satt i era arbetsflödesvariabler; annars kommer filtreringen av externa deltagare att misslyckas.Steg 4: Konfigurera AI-research och verktyg
Skapa research-sammanfattningar om deltagare med AI-agenten och MadKudu MCP-verktyget och skicka sedan utdata till kalenderhändelsen.
- Öppna AI Attendee Researcher och behåll Prompt Type som
definemed Text som innehåller den angivna prompten. - Verifiera att uttrycket för deltagarlistan i prompten resolvar till
{{ JSON.stringify($json.attendees.filter(a => !a.email.includes('@'+$vars.my_company_domain)).map(a => a.email)) }}. - Säkerställ att OpenAI Chat Model är ansluten som språkmodell för AI Attendee Researcher. Inloggningsuppgifter krävs: Anslut era openAiApi-uppgifter i OpenAI Chat Model.
- Säkerställ att MadKudu MCP Tool är anslutet som verktyg för AI Attendee Researcher, med SSE Endpoint inställt till
https://mcp.madkudu.com/{{$vars.madkudu_api_key}}/sse.
$vars.madkudu_api_key. Lägg till denna variabel i er n8n-miljö, annars kommer verktyget att misslyckas.Steg 5: Testa och aktivera ert arbetsflöde
Kör ett manuellt test för att bekräfta att händelsefiltrering, AI-research och skapande i kalendern fungerar från start till mål.
- Klicka på Execute Workflow för att köra Scheduled Hourly Trigger manuellt.
- Bekräfta att Fetch Calendar Events returnerar kommande möten inom den närmaste timmen.
- Verifiera att Filter External Attendees endast släpper igenom händelser med externa deltagares e-postadresser.
- Kontrollera att Create Summary Event skapar en kalenderpost med den AI-genererade sammanfattningen i beskrivningen.
- Växla arbetsflödet till Active för att köra det timvis i produktion.
Vanliga fallgropar
- Google Kalender-inloggningar kan löpa ut eller kräva specifika behörigheter. Om något slutar fungera, kontrollera först det kopplade kontot i n8n:s avsnitt Credentials och bekräfta att det kan skapa händelser.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder misslyckas på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt annars kommer du att redigera output för alltid.
Vanliga frågor
Cirka 30 minuter om dina konton och API-nycklar är redo.
Nej. Du kopplar mest konton och klistrar in din domän och dina API-nycklar.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på $20/månad för högre volym. Du behöver också räkna in OpenAI API-användning plus vad din MadKudu-plan inkluderar för enrichment.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det handlar oftast bara om att ändra prompten. Uppdatera instruktionerna i AI Agent-noden så att outputen matchar hur du vill förbereda dig (punktlista, “risker + möjligheter” eller en kort sammanfattning i ett stycke). Du kan också justera logiken i “Filter External Attendees” om du vill inkludera vissa partnerdomäner. Vissa team lägger till en kort sektion med “frågor att ställa”, vilket gör att briefen känns mindre som en bio och mer som en plan.
Oftast beror det på att auktoriseringen har löpt ut eller att behörighet saknas för att skapa händelser. Anslut din Google Kalender-credential igen i n8n och bekräfta sedan att arbetsflödet både kan läsa händelser och skriva en ny privat sammanfattningshändelse. Om det bara misslyckas för vissa möten, kontrollera kalender-ID:t och säkerställ att du inte hämtar från en delad kalender där ditt konto kan se men inte redigera. Bekräfta också att händelsedata innehåller deltagare; vissa “blockerad tid”-händelser gör inte det.
Tillräckligt för de flesta små team. På n8n Cloud Starter begränsas du av månatliga körningar, medan högre planer klarar mer. Om du self-hostar finns ingen körningsgräns, och den främsta begränsningen blir dina serverresurser plus API-rate limits från Google, MadKudu och OpenAI.
Ofta, ja, eftersom du gör mer än en enkel tvåstegs-zap. Det här arbetsflödet gynnas av grenlogik (hoppa över interna möten, processa externa), plus AI-agentmönstret som är enklare att hantera i n8n. n8n ger dig också ett self-host-alternativ, vilket spelar roll om du har många möten och inte vill att varje körning ska prissättas dyrt. Zapier eller Make kan ändå fungera om flödet är väldigt litet och du inte behöver så mycket filtrering. Om du är osäker, prata med en automationsexpert och få en snabb rekommendation.
När det här väl rullar slutar kalendern vara en lista av överraskningar och blir ett riktigt förberedelseverktyg. Sätt upp det en gång och använd tiden du får tillbaka till själva samtalen.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.