Revenue Workflows
40 lines

Blueprint overview

Meeting Notes Extractor

Find the most recent completed meeting with a customer and extract a structured summary, next steps, participants, pain points, and key decisions.

Best for

Sales · RevOps · Customer success

Runs with

Avoma · Meeting summary · Next steps

At a glance

04

Outputs

01

Capabilities

03

Teams

Core outputs

Meeting summary

Next steps with owners

Pain points

Key decisions

Capability requirements

MCP

What it solves

Notes captured differently every time, by every person. Follow-ups and decisions slip through the gaps.

The same structure, every conversation. Not whoever's taking notes that day.

Owners assigned automatically. Not left for someone to sort out later.

Outcomes typed and machine-readable — ready for the next workflow.

Workflow

1

Locate the most recent completed meeting for the customer in Avoma.

2

Retrieve the transcript for that meeting.

3

Extract a structured summary, owners, pain points, and decisions.

Implementation

Review the underlying FML blueprint — the sessions, tools, and typed schemas that define this workflow — and see exactly how it is instructed for repeatable execution.

FML Blueprint

call-log.fml

40 lines

Copy
system(`You are an assistant that analyzes meetings from Avoma, extracting structured summaries, action items, and participants.
`)

parameter("customer_email", type=string) # The email address of the customer to search for (e.g., user@syndio.com).

require mcp Avoma

session("find_meeting") {
    use mcp Avoma {
        allowlist = ["get_current_datetime", "list_meetings"]
    }
    + 1. Call get_current_datetime to get the current UTC date and time. 2. Calculate a date roughly 90 days in the past. 3. Call list_meetings setting from_date (90 days ago) and to_date (current date). Pass {{ .params.customer_email }} as the only item in the attendee_emails array. 4. Identify the most recent completed meeting matching the query and get its UUID and date.
    - Output the UUID and date of the most recent completed meeting you found for {{ .params.customer_email }}.
    schema {
        meeting_uuid: string # The UUID of the meeting found in Avoma.
        date: string # The date (and time) of the identified meeting.
    }
}

session("avoma-details", target="meeting_summary", after="find_meeting") {
    use mcp Avoma {
        allowlist = ["get_meeting_transcript"]
    }
    context "Meeting UUID to analyze: {{ .context.find_meeting.meeting_uuid }}\n"
    + Call get_meeting_transcript for the meeting UUID {{ .context.find_meeting.meeting_uuid }}.
    - Based on the meeting transcript retrieved, extract the summary, next steps, call participants, pain points, and key decisions exactly as requested by the schema.
    schema {
        summary: string # Summary of the meeting including key points discussed.
        next_steps: {
            step: string # Description of the next step.
            owner: string # Person responsible for the next step.
            ownerType: string # Type of owner (e.g., Barndoor member or external participant).
        }[]
        call_participants: {
            name: string # Name of the participant.
        }[]
        pain_points: string[] # Customer pain points, challenges, or blockers mentioned during the call.
        key_decisions: string[] # Key decisions or agreements made during the meeting.
    }
}