Morning meeting briefings with live company news

Every morning at 6am, get a Gmail draft with a one-page briefing for each external meeting today, with fresh news and talking points pulled live from the web.

Agentic Task
Google CalendarTavilyGmailPersonal ProductivitySalesMeeting WorkflowsResearch & MonitoringDaily Digests

Build me an agent-based workflow that emails me a one-page briefing for each external meeting on my calendar before my day starts.

Trigger: cron, every morning at 6:00am in my local timezone (default to America/New_York unless I say otherwise, and make the timezone easy to change). Skip Saturday and Sunday by default.

Step 1: Use Google Calendar List Events on my primary calendar to fetch every event between 5:00am today and 11:59pm today in my local timezone. Use singleEvents=true so recurring meetings expand into individual instances, and orderBy=startTime so they come back chronologically.

Step 2: Filter the events down to external meetings only. An event counts as external if it has at least one attendee whose email domain does not match my own email domain (treat the user as the authenticated Google account). Drop events with no other attendees, events marked as all-day, events with the word 'focus', 'block', 'hold', or 'OOO' in the title, and events where the only non-self attendees are obvious personal addresses (gmail.com, outlook.com, yahoo.com, icloud.com, hotmail.com, proton.me) unless those are the only attendees on a meeting that still looks like a real call.

Step 3: If more than three external meetings remain, pick the three highest priority. Priority order: earlier meetings beat later ones if they tie, then prefer smaller groups (2 to 4 people), then prefer longer meetings (30+ minutes). Stop at three so research credits stay predictable.

Step 4: For each surviving meeting, identify the external company by taking the most common external email domain on the attendee list. For each such company:

(a) Call Tavily Search with a query like '<company name or domain> news funding leadership product' scoped to the last 30 days, max_results 5, search_depth basic. Capture the top results with titles, URLs, and snippets.

(b) Call Tavily Extract on the company's homepage URL (derive it from the domain, e.g. https://<domain>/). If the homepage looks like a generic landing page or login wall, try '/about' as a second attempt. Use extract_depth basic to keep credits low.

(c) For each external attendee on that meeting, run a short Tavily Search like '<full name> <company name> LinkedIn role' with max_results 3 to find their current role and any recent public quotes or posts. Skip this sub-step if I would burn more than 8 Tavily calls per meeting.

Step 5: Compose one briefing per meeting in clean HTML suitable for a Gmail draft. Each briefing should include: meeting title, start time in my local timezone, attendee list with roles where known, a 2-3 sentence company snapshot from the extracted homepage, a 'Recent news' section with 2-4 short bullets (each with the source link inline under the bullet), an 'Attendee context' section with one line per external attendee, and a 'Suggested talking points' section with exactly two specific, non-generic openers grounded in the news or company snapshot. Every factual claim must carry a source link from the Tavily results immediately under or after it; if no source exists, omit the claim.

Step 6: Stack the briefings in chronological order (earliest meeting first) into a single email body with a short header like 'Today's meeting briefings, <date>'. Call Gmail Create a Draft, addressed to me (use the authenticated Gmail account's own address for the To field) so I can review and forward or skim from my inbox. Set the subject to 'Meeting briefings for <weekday>, <Month> <day>'. Do not send the email, only create the draft.

Edge cases: if there are zero external meetings today, do nothing (do not create an empty draft). If Tavily returns no usable results for a company, write the briefing with whatever calendar context exists and add a one-line note that web research came up empty for that company. If a homepage extract fails (404, login wall, JS-heavy), skip the snapshot and still include the news search. Never invent sources; every link in the email must be one Tavily actually returned.

Make the cap (three meetings), the cron time (6:00am), the timezone, the weekday rules, and my company domain easy-to-edit inputs at the top of the agent instructions so I can tune them without rewriting the workflow.

Additional information

What does this prompt do?
  • Pulls today's meetings from your Google Calendar at 6am in your local time and keeps only the ones with people from outside your company.
  • Researches each guest's company live on the web for recent news, leadership moves, and what they actually do, then pulls a clean snapshot from their homepage.
  • Writes a tight one-page briefing per meeting with a company snapshot, attendee context, recent news, and two suggested talking points, with source links under every bullet.
  • Drops everything into a single Gmail draft addressed to you, with all briefings stacked in the order your day runs so you can skim it with your coffee.
What do I need to use this?
  • A Google account with Calendar and Gmail access.
  • A free Tavily account for the live web research (the free tier covers a normal day of meetings).
  • A working sense of which calendars hold your real meetings, so the briefing focuses on the right day.
How can I customize it?
  • Shift the run time, change the timezone, or skip weekends if 6am is too early.
  • Raise or lower the cap of three briefings per day to control how much research credit you spend.
  • Tune what counts as external (everyone outside your domain, or only specific guest domains) and what topics the news search prioritizes.

Frequently asked questions

Will it brief me on internal team meetings too?
No. The workflow looks at every event on today's calendar and only keeps meetings that include at least one guest from outside your company. Internal-only syncs are skipped so your briefing stays focused.
What if I have ten external meetings in one day?
By default the agent picks the three highest-priority ones (longer meetings, smaller groups, and earlier in the day all bump priority) so research credits stay predictable. You can raise or lower that cap any time.
Does it send the email automatically?
No. It lands as a Gmail draft addressed to you. Nothing goes out without your review, so you always get the final say before forwarding to a teammate or hitting delete.
How fresh is the company news?
The web research runs live each morning, so anything indexed on the open web in the last few days will show up. Every claim in the briefing has a clickable source link so you can verify before you walk into the room.
Can I change the 6am time or timezone?
Yes. The schedule, timezone, and weekday rules are all knobs you can tweak when you build the workflow, including pausing it on weekends or your usual focus days.

Stop walking into meetings cold.

Connect Google Calendar, Gmail, and Tavily once, and Geni leaves a sharp briefing in your inbox before your day starts.