Post-meeting follow-up agent: Granola to HubSpot to Outlook draft

When a new Granola note lands, log the recap on the HubSpot contact and drop a personalized follow-up email into Outlook drafts for review.

Agentic Task
GranolaHubSpotMicrosoft OutlookSalesPersonal ProductivityMeeting WorkflowsEmail AutomationData Sync

Build me a post-meeting follow-up agent that turns a fresh Granola note into a logged CRM record and a ready-to-send Outlook draft.

Trigger: poll Granola for a new note (event type new_note). When one appears, call Granola Get Note to retrieve the full meeting summary, attendees, calendar event, and action items.

Then the agent should write a personalized follow-up email that recaps the conversation in a couple of short paragraphs, lists each commitment with the owner and due date as a bulleted action-items section, and includes any links to next steps that came up in the meeting. Match the tone of a professional but friendly account owner.

For each external attendee on the note (anyone whose email domain is not my own), look them up in HubSpot using Search Contacts filtered by email. If a contact is found, call HubSpot Create Note to log the meeting summary onto that contact record so it shows up in the contact timeline. Include the meeting title, date, attendee list, the recap, and the action items in the note body. If the contact is not found, skip the HubSpot step for that person and keep going.

After CRM logging, if there is at least one external attendee, call Microsoft Outlook Create Draft Message addressed to all external attendees (To field) with a clear subject line like "Follow-up: <meeting title>" and the follow-up email body. Leave the draft in my Drafts folder so I can review and send it manually. Do not send automatically.

If there are no external attendees (internal-only meeting), skip the Outlook draft entirely and just log the HubSpot notes for any internal contacts that happen to exist in HubSpot. Otherwise the workflow ends silently.

Make sure the agent handles edge cases gracefully: missing action items section, attendees without emails, contacts not in HubSpot, and Granola notes that arrive before the meeting summary is fully populated.

Additional information

What does this prompt do?
  • Watches Granola for new meeting notes and pulls the full summary, attendees, and action items as soon as one is created.
  • Drafts a personalized recap email that calls out each commitment with the owner and due date, plus links to next steps.
  • Looks up every external attendee in HubSpot by email and logs the meeting summary as a Note on their contact record so it shows up in the timeline.
  • Creates a draft message in Microsoft Outlook addressed to the external attendees so you can review and send. Skips the draft entirely when the meeting was internal-only.
What do I need to use this?
  • A Granola account connected to General Input with access to the meetings you want to follow up on.
  • A HubSpot account with permission to search contacts and create notes (CRM read and write scopes).
  • A Microsoft Outlook account connected with the Mail.ReadWrite scope so the agent can create drafts in your Drafts folder.
  • A working definition of external (typically anyone whose email domain is not your own).
How can I customize it?
  • Change the tone of the follow-up email (warm and casual for prospects, terse and structured for internal stakeholders).
  • Adjust how external is detected, for example by maintaining an allowlist of partner domains or excluding specific addresses.
  • Decide what to log on the HubSpot contact (full summary vs. action items only) and whether to also associate the note with the related deal or company.
  • Turn the draft into an auto-send when you trust the output, or route it through a Slack approval step first.

Frequently asked questions

Does this send the email automatically?
No. By design the agent leaves the message in your Outlook Drafts folder so you can review the recap, tweak the tone, and hit send yourself. You can change this once you trust the output.
What happens if the meeting was internal only?
If the agent finds no external attendees, it skips the Outlook draft step entirely and only logs the summary in HubSpot. You will not get an empty draft cluttering your Drafts folder.
What if an external attendee is not in HubSpot?
The agent skips the HubSpot Create Note step for that person and continues with the rest of the workflow. You can extend the prompt to create the contact first if you want net-new attendees added automatically.
Can I use a different email tool like Gmail?
Yes. Swap Microsoft Outlook Create Draft Message for the equivalent Gmail draft operation in the prompt. The rest of the agent logic stays the same.
Why use Granola instead of native sharing?
Granola can already share its summary, but this workflow adds two things on top: it writes the recap to the HubSpot contact timeline so your team has CRM context, and it pre-fills an Outlook draft addressed to the right people.

Stop rewriting the same follow-up email after every call.

Connect Granola, HubSpot, and Outlook once, and Geni handles the recap, CRM log, and draft the moment your meeting ends.