← Back to Directory
šŸŽ™ļø

Meeting Follow-Up Pipeline

Auto-generate meeting reports from transcripts, save to Drive, draft follow-up emails, and create PDF summaries

šŸ¤– 0 ↑ 0 ↓ Ā |Ā  šŸ‘¤ 0 ↑ 0 ↓
advancedā± 45 minutesšŸ”„ 10 swappable alternatives

šŸ§‚ Ingredients

šŸ”Œ APIs

meeting_transcripts_summaries_and_intelligence_notes

šŸ”„ Alternatives:

Deepgram — Faster transcription, lower costAssembly Ai — Better speaker diarizationWhisper — Free, self-hosted option

store_meeting_reports_and_organized_folders

šŸ”„ Alternatives:

Dropbox — Better sharing/collaborationBox — Enterprise-grade document management

draft_and_send_follow_up_emails_to_attendees

šŸ”„ Alternatives:

Outlook — Microsoft ecosystem integrationSendgrid — Transactional email at scaleMailgun — Developer-friendly email API

generate_polished_pdf_meeting_reports

šŸ”„ Alternatives:

Pdf Co — More PDF operationsGotenberg — Self-hosted, free

šŸ“‹ Step-by-Step Build Guide

STEP 1

Connect to Grain API and poll for new completed recordings

1. Connect to Grain API and poll for new completed recordings

Persist the data to the configured storage.

Data structure:
- Include timestamp (ISO 8601) with every record
- Use consistent field names across entries
- Store raw values (not formatted) for future analysis
- Add a source/origin field for audit trail

Storage operation:
1. Validate the data before writing
2. Check for duplicates (by timestamp + unique key)
3. Append to existing records — never overwrite
4. Verify the write succeeded
5. Return the stored record ID/reference

šŸ§‘ Human Required

  • • ## Connect the API 1. Sign up for the service if you don't have an account 2. Find the API settings in your account dashboard 3. Generate an API key or access token 4. Share the key with your agent when prompted šŸ’” Most services have a free tier that's sufficient to get started.
STEP 2

When a new recording appears, pull the transcript and AI

2. When a new recording appears, pull the transcript and AI-generated summary

Compile the gathered data into a structured report.

Format as clean Markdown with:
- Title/date header
- Executive summary (2-3 sentences)
- Key metrics section with actual numbers
- Detailed sections with bullet points
- Action items or recommendations at the end

Keep it scannable — busy people read reports in 30 seconds.
Use emoji sparingly for visual anchors (šŸ“Š metrics, āœ… wins, āš ļø concerns, šŸ“‹ action items).
Include data comparisons: "X this period vs Y last period (↑Z%)"

If any data source was unavailable, note it clearly: "āš ļø [Source] data unavailable — excluded from this report."
STEP 3

Parse the transcript to extract

3. Parse the transcript to extract: key decisions, action items (with owners), questions raised, next steps

Parse the input data and extract the specified fields.

Processing steps:
1. Parse the raw input (JSON response, transcript text, HTML content)
2. Identify and extract each required field
3. Normalize data formats: dates to ISO 8601, amounts to numbers, text trimmed
4. Validate extracted data — flag missing or malformed fields
5. Structure the output as a clean JSON object

For text extraction (transcripts, articles):
- Use pattern matching for structured data (dates, amounts, URLs)
- Use semantic understanding for unstructured data (key decisions, action items, sentiment)

Return both the extracted data and a confidence indicator for each field.
STEP 4

Generate a structured meeting report in Markdown format

4. Generate a structured meeting report in Markdown format

Compile the gathered data into a structured report.

Format as clean Markdown with:
- Title/date header
- Executive summary (2-3 sentences)
- Key metrics section with actual numbers
- Detailed sections with bullet points
- Action items or recommendations at the end

Keep it scannable — busy people read reports in 30 seconds.
Use emoji sparingly for visual anchors (šŸ“Š metrics, āœ… wins, āš ļø concerns, šŸ“‹ action items).
Include data comparisons: "X this period vs Y last period (↑Z%)"

If any data source was unavailable, note it clearly: "āš ļø [Source] data unavailable — excluded from this report."
STEP 5

Save the report to Google Drive in a folder structure

5. Save the report to Google Drive in a folder structure: /Meetings/{Year}/{Month}/{Meeting Title}

Persist the data to the configured storage.

Data structure:
- Include timestamp (ISO 8601) with every record
- Use consistent field names across entries
- Store raw values (not formatted) for future analysis
- Add a source/origin field for audit trail

Storage operation:
1. Validate the data before writing
2. Check for duplicates (by timestamp + unique key)
3. Append to existing records — never overwrite
4. Verify the write succeeded
5. Return the stored record ID/reference
STEP 6

Draft a follow

6. Draft a follow-up email to all attendees with: summary, their specific action items, and next meeting date

Draft a follow-up email to all attendees with: summary, their specific action items, and next meeting date

Steps:
1. Validate all required inputs are available
2. Execute the operation described above
3. Verify the result meets expected output format
4. Handle errors gracefully — retry transient failures, log and alert on persistent ones
5. Return structured output with status and any relevant data

If any required data is missing, request it from the user before proceeding.
STEP 7

Optionally

7. Optionally: generate a branded PDF report using nano-pdf for external stakeholders

Compile the gathered data into a structured report.

Format as clean Markdown with:
- Title/date header
- Executive summary (2-3 sentences)
- Key metrics section with actual numbers
- Detailed sections with bullet points
- Action items or recommendations at the end

Keep it scannable — busy people read reports in 30 seconds.
Use emoji sparingly for visual anchors (šŸ“Š metrics, āœ… wins, āš ļø concerns, šŸ“‹ action items).
Include data comparisons: "X this period vs Y last period (↑Z%)"

If any data source was unavailable, note it clearly: "āš ļø [Source] data unavailable — excluded from this report."
STEP 8

Log the meeting in your tracking system with date, attendees, key outcomes, and

8. Log the meeting in your tracking system with date, attendees, key outcomes, and follow-up due dates

Log the meeting in your tracking system with date, attendees, key outcomes, and follow-up due dates

Steps:
1. Validate all required inputs are available
2. Execute the operation described above
3. Verify the result meets expected output format
4. Handle errors gracefully — retry transient failures, log and alert on persistent ones
5. Return structured output with status and any relevant data

If any required data is missing, request it from the user before proceeding.

šŸ¤– Example Agent Prompt

Persist the data to the configured storage.

Data structure:
- Include timestamp (ISO 8601) with every record
- Use consistent field names across entries
- Store raw values (not formatted) for future analysis
- Add a source/origin field for audit trail

Storage operation:
1. Validate the data before writing
2. Check for duplicates (by timestamp + unique key)
3. Append to existing records — never overwrite
4. Verify the write succeeded
5. Return the stored record ID/reference

Copy this prompt into your agent to get started.