Skip to content

Meeting Assistant

The LMA Meeting Assistant is an agentic AI assistant powered by the Strands Agents SDK with Amazon Bedrock. It provides real-time, context-aware assistance during meetings by leveraging a set of built-in tools that can access the current meeting transcript, search knowledge bases, query past meetings, and perform web research.

LMA supports three service modes for the Meeting Assistant, configured during stack deployment:

ModeDescription
STRANDS_BEDROCKAgent with built-in tools and no knowledge base. The assistant can access meeting transcripts, search past meetings, and perform web searches, but does not have access to a document knowledge base.
STRANDS_BEDROCK_WITH_KB (Create)Agent with built-in tools plus an automatically created Bedrock Knowledge Base. LMA provisions a new KB and populates it from S3 documents and/or web-crawled pages that you specify.
STRANDS_BEDROCK_WITH_KB (Use Existing)Agent with built-in tools plus your existing Bedrock Knowledge Base. Provide the KB ID of a knowledge base you have already created and manage independently.

Say “OK Assistant” during a meeting to activate the assistant by voice. The assistant detects the wake phrase in the transcript, processes your spoken question, and inserts its response inline in the transcript.

The wake phrase pattern is configurable via the Meeting Assist Wake Phrase Regular Expression CloudFormation parameter. The default regex matches “OK Assistant” and common variations.

Type questions directly in the chat panel on the meeting details page. The assistant streams its response in real time with token-by-token streaming, providing a conversational experience. The chat interface provides full access to all built-in tools.

Pre-configured suggestion buttons appear in the chat panel, allowing users to trigger common queries with a single click. These buttons are configurable by administrators via the LMA UI settings. See Chat Shortcut Button Configuration for details.

The Meeting Assistant has access to the following tools:

ToolDescription
current_meeting_transcriptRetrieves and summarizes the current meeting transcript. Use this to answer questions about what has been discussed in the ongoing meeting.
document_searchSearches the Bedrock Knowledge Base for relevant documents. Available only when a Knowledge Base is configured (STRANDS_BEDROCK_WITH_KB modes).
meeting_historyPerforms semantic search across past meeting transcripts. User-Based Access Control (UBAC) is enforced, so users only see results from their own meetings unless they are admins.
recent_meetings_listReturns a chronological list of recent meetings, providing an overview of meeting activity.
web_searchPerforms web searches via Tavily to find current information from the internet. Requires a Tavily API key to be configured.
control_vnc_previewShows or hides the Virtual Participant (VP) browser screen on the meeting page, allowing users to see what the VP browser is displaying.
control_vp_browserControls the VP browser to navigate web pages and perform web research during meetings, enabling the assistant to look up information in real time.

When using STRANDS_BEDROCK_WITH_KB (Create) mode, you can configure data sources for the automatically created Bedrock Knowledge Base.

Provide an S3 bucket name and optional key prefixes to index documents stored in S3. The Knowledge Base will ingest and index these documents, making them searchable via the document_search tool.

Provide one or more seed URLs for the web crawler to index. Configure the crawl scope to control how broadly the crawler follows links:

ScopeDescription
DEFAULTCrawls pages linked from the seed URLs with default depth and breadth limits.
HOST_ONLYRestricts crawling to pages on the same host as the seed URLs.
SUBDOMAINSCrawls pages on the same domain and its subdomains.

Choose the Bedrock foundation model that powers the Meeting Assistant. Set the model via the MeetingAssistServiceBedrockModelID CloudFormation parameter. Supported models include:

  • Amazon Nova Micro
  • Amazon Nova Lite
  • Amazon Nova Pro
  • Anthropic Claude Sonnet 4.5
  • Anthropic Claude Opus 4
  • Anthropic Claude Haiku 4.5

The model selection affects response quality, latency, and cost. Lighter models (Nova Micro, Claude Haiku 4.5) are faster and less expensive, while more capable models (Claude Opus 4, Claude Sonnet 4.5) provide higher-quality responses for complex queries.

Optionally configure Amazon Bedrock Guardrails to apply content filtering and safety controls to the assistant’s responses.

Create the guardrail in the Amazon Bedrock console first, in the same AWS account and Region as the LMA stack, then set the following CloudFormation parameters:

  • BedrockGuardrailId — The ID of your Bedrock Guardrail (for example abcd1234efgh). Empty by default, which means no guardrail is applied.
  • BedrockGuardrailVersion — The guardrail version to use. Defaults to DRAFT, which always resolves to the working draft of the guardrail. Set a numeric version (for example 1) to pin a published version.

Both parameters must have a value for a guardrail to be applied. If BedrockGuardrailId is left empty — the default — the assistant behaves exactly as it does without the feature, and no guardrail permissions are granted to the assistant’s IAM role. If you set an ID but blank the version, no guardrail is applied; the function logs a warning naming the ID at startup. When both are set, the deployment scopes the role’s bedrock:ApplyGuardrail permission to that single guardrail ARN.

When configured, the guardrail is attached to all five paths the assistant uses to reach Amazon Bedrock:

  • the Strands agent’s Bedrock model, which covers normal streaming and non-streaming chat turns;
  • the direct Converse fallback used if the agent cannot be constructed, so the fallback is not a way to reach the model without the guardrail;
  • all three Knowledge Base RetrieveAndGenerate calls: the document-search tool, the meeting-history tool, and the per-meeting transcript knowledge base query.

On the two Converse paths the guardrail trace is enabled, so intervention is reported by Bedrock in the response trace. The RetrieveAndGenerate API has no trace option, so on the three Knowledge Base paths an intervention surfaces as the guardrail’s configured blocked-input or blocked-output message in the returned text.

If the assistant starts returning blocked or masked content after you enable a guardrail, review the guardrail’s filter and topic policies in the Bedrock console — LMA passes the request through unchanged and does not override guardrail decisions.

The Meeting Assistant uses prompt templates stored in DynamoDB to guide its behavior. LMA ships with default prompts that work well for general use cases.

  • Default prompts are provided with LMA and may be updated with new releases.
  • Custom prompts override the defaults and persist across stack updates. They are never overwritten by LMA upgrades.

Administrators can view and edit custom prompt templates via the LMA admin UI at:

/#/configuration/transcript-summary

Custom prompts allow you to tailor the assistant’s behavior, tone, and output format to your organization’s needs.

Chat shortcut buttons provide one-click access to common queries in the chat panel. Administrators can configure these buttons via the LMA UI:

  • Add new shortcut buttons with custom labels and prompts.
  • Edit existing button labels and associated prompts.
  • Delete buttons that are no longer needed.

Shortcut buttons are shared across all users and appear in the chat interface for every meeting.

The web_search tool enables the Meeting Assistant to search the web for current information during meetings. This tool is powered by Tavily.

To enable web search, set the TavilyApiKey CloudFormation parameter to your Tavily API key. Without a valid API key, the web_search tool will not be available to the assistant.