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
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
Locate the most recent completed meeting for the customer in Avoma.
Retrieve the transcript for that meeting.
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
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. } }