Revenue Workflows
40 lines

Plan 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

Post-meeting notes are inconsistent and rarely captured the same way twice, so follow-ups and decisions slip through the cracks.

Standardizes how every customer conversation is captured.

Assigns clear owners to each follow-up automatically.

Makes meeting outcomes machine-consumable for downstream workflows.

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 plan — the sessions, tools, and typed schemas that define this workflow — and see exactly how it is instructed for repeatable execution.

FML Plan

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.
    }
}