Amazon Quick Suite MCP Action Connector Setup Guide
Amazon Quick Suite MCP Action Connector Setup Guide
Section titled “Amazon Quick Suite MCP Action Connector Setup Guide”Overview
Section titled “Overview”This guide walks you through configuring an MCP action connector in Amazon Quick Suite to access Live Meeting Assistant (LMA) meeting data. Once configured, Quick Suite can search meeting transcripts, retrieve summaries, list meetings, and even schedule or start meetings with LMA’s virtual participant feature.
Why Connect Quick Suite to LMA?
Section titled “Why Connect Quick Suite to LMA?”Integrating LMA with Quick Suite enables powerful AI-driven workflows:
Use Cases
Section titled “Use Cases”Meeting Intelligence Queries
- “Find all meetings where we discussed the Q4 roadmap”
- “What action items came out of yesterday’s standup?”
- “Show me meetings with Sarah from last week”
Automated Meeting Summaries
- Quick Suite can retrieve and summarize key points from any LMA meeting
- Extract action items with owners and due dates
- Identify key topics and decisions
Virtual Participant Automation
- Schedule LMA virtual participants to join future meetings automatically
- Start immediate meeting recordings via Quick Suite workflows
- Integrate meeting capture into broader business processes
Cross-System Intelligence
- Combine meeting insights with data from other Quick Suite connectors (Salesforce, Jira, etc.)
- Create automated workflows triggered by meeting events
- Answer questions that span multiple systems (e.g., “What did we decide about the customer issue mentioned in the Salesforce case?”)
Prerequisites
Section titled “Prerequisites”- LMA deployed with MCP Server enabled (v0.2.23 or later)
- Important: During LMA deployment, the
EnableMCPparameter must be set totrue(this is the default) - If you already have LMA deployed, see Enabling MCP Server on Existing Deployment below
- Important: During LMA deployment, the
- Amazon Quick Suite Enterprise subscription (required to create action connectors)
- Amazon Quick Suite Professional or Enterprise subscription (required to invoke action connectors)
- Quick Suite Author role or higher
- Admin access to LMA CloudFormation stack outputs
Enabling MCP Server on Existing Deployment
Section titled “Enabling MCP Server on Existing Deployment”If you deployed LMA before v0.2.23 or with MCP Server disabled, follow these steps:
- Log into the AWS Management Console
- Navigate to CloudFormation
- Select your LMA stack (default name:
LMA) - Click Update
- Choose Use current template
- Click Next
- Find the Enable MCP Server Integration parameter and set it to
true - Click Next through the remaining screens
- Check the acknowledgment boxes and click Update stack
- Wait for the stack update to complete (~10-15 minutes)
- Return to the Outputs tab to see the MCP configuration values
Authentication: Three-Legged OAuth (3LO)
Section titled “Authentication: Three-Legged OAuth (3LO)”LMA’s MCP server uses Three-Legged OAuth 2.0 (Authorization Code Flow) with Amazon Cognito as the identity provider. This ensures secure, user-authenticated access to meeting data.
How 3LO Works with LMA
Section titled “How 3LO Works with LMA”- User Authorization: Quick Suite redirects the user to LMA’s Cognito login page
- User Authenticates: User logs in with their LMA credentials
- Authorization Code: Cognito returns an authorization code to Quick Suite
- Token Exchange: Quick Suite exchanges the code for access and refresh tokens
- Authenticated Requests: Quick Suite uses the access token to call LMA’s MCP tools
User-Based Access Control (UBAC)
Section titled “User-Based Access Control (UBAC)”LMA enforces user-based access control through the JWT tokens:
- Non-admin users can only access their own meetings
- Admin users can access all meetings in the system
- Access control is enforced at the MCP tool level using the
subclaim from the JWT
Step 1: Gather LMA MCP Server Configuration
Section titled “Step 1: Gather LMA MCP Server Configuration”- Log into the AWS Management Console
- Navigate to CloudFormation
- Select your LMA main stack (default name:
LMA) - Click the Outputs tab
- Copy the following values (you’ll need them in Step 2):
| Output Key | Description | Example Value |
|---|---|---|
MCPServerEndpoint | MCP server URL | https://gateway-abc123.bedrock-agentcore.us-east-1.amazonaws.com/mcp |
MCPServerClientId | OAuth Client ID | 1a2b3c4d5e6f7g8h9i0j |
MCPServerClientSecret | OAuth Client Secret | secret123... (store securely!) |
MCPServerTokenURL | OAuth token endpoint | https://lma-domain.auth.us-east-1.amazoncognito.com/oauth2/token |
MCPServerAuthorizationURL | OAuth authorization endpoint | https://lma-domain.auth.us-east-1.amazoncognito.com/oauth2/authorize |
Note: These outputs are only visible if you deployed LMA with
EnableMCPset totrue(default).
Security Note: The
MCPServerClientSecretis sensitive. Store it securely and never commit it to version control.
Step 2: Create MCP Integration in Quick Suite
Section titled “Step 2: Create MCP Integration in Quick Suite”2.1 Navigate to Integrations
Section titled “2.1 Navigate to Integrations”- Log into the Amazon Quick Suite console
- Click Integrations in the left navigation
- Click the Add button (plus ”+” icon)
2.2 Configure Integration Details
Section titled “2.2 Configure Integration Details”On the Create Integration page:
- Name:
LMA Meeting Assistant - Description:
Access Live Meeting Assistant transcripts, summaries, and meeting data - MCP server endpoint: Paste the
MCPServerEndpointvalue from Step 1https://gateway-abc123.bedrock-agentcore.us-east-1.amazonaws.com/mcp - Click Next
2.3 Configure Authentication
Section titled “2.3 Configure Authentication”-
Select authentication method: User authentication (OAuth)
-
Choose configuration approach: Manual configuration
Note: LMA’s Cognito setup does not support Dynamic Client Registration (DCR)
-
Enter OAuth configuration:
- Client ID: Paste
MCPServerClientIdfrom Step 1 - Client Secret: Paste
MCPServerClientSecretfrom Step 1 - Token URL: Paste
MCPServerTokenURLfrom Step 1 - Auth URL: Paste
MCPServerAuthorizationURLfrom Step 1 - Redirect URL: Use Quick Suite’s callback URL (provided by Quick Suite)
- Client ID: Paste
-
Click Create and continue
2.4 Authorize the Integration
Section titled “2.4 Authorize the Integration”- You’ll be redirected to the LMA Cognito login page
- Log in with your LMA credentials (email and password)
- Review the permissions requested
- Click Allow to authorize Quick Suite to access your LMA data
- You’ll be redirected back to Quick Suite
2.5 Review Integration Capabilities
Section titled “2.5 Review Integration Capabilities”Quick Suite will connect to the LMA MCP server and discover available tools:
Available Actions:
- ✅
search_lma_meetings- Search across meeting transcripts - ✅
get_meeting_transcript- Retrieve full transcript - ✅
get_meeting_summary- Get AI-generated summary and action items - ✅
list_meetings- List meetings with filters - ✅
schedule_meeting- Schedule future meeting with virtual participant - ✅
start_meeting_now- Start immediate meeting with virtual participant
Data Access:
- ✅ Meeting transcripts and summaries stored in LMA’s Bedrock Knowledge Base
Click Next to continue.
2.6 Share Integration (Optional)
Section titled “2.6 Share Integration (Optional)”To allow other users in your organization to use this integration:
- Click Share integration
- Select users or groups
- Click Save
Note: Each user will need to authenticate with their own LMA credentials when they first use the integration.
2.7 Complete Integration Setup
Section titled “2.7 Complete Integration Setup”- Click Done to finish the integration setup
- Quick Suite will begin creating the action connector
- Wait for the status to change from Creating to Active (this may take 1-2 minutes)
- Once active, the integration is ready to use
Step 3: Test the Integration
Section titled “Step 3: Test the Integration”3.1 First-Time Authentication
Section titled “3.1 First-Time Authentication”The first time you (or any user) invokes the LMA action connector:
- Quick Suite will display a Sign in button
- Click Sign in to start the OAuth authorization flow
- You’ll be redirected to the LMA Cognito login page
- Log in with your LMA credentials (email and password)
- Review the permissions requested
- Click Allow to authorize Quick Suite to access your LMA data
- You’ll be redirected back to Quick Suite
Note: This authentication is per-user. Each user must complete this flow once to connect their LMA account.
3.2 Test Search Functionality
Section titled “3.2 Test Search Functionality”- In Quick Suite, open the Chat interface
- Try a natural language query:
Search my LMA meetings for discussions about the product roadmap
- Quick Suite should invoke the
search_lma_meetingstool and return results
3.3 Test Meeting Retrieval
Section titled “3.3 Test Meeting Retrieval”- Get a meeting ID from your LMA UI (format:
CallIdlikeabc123-def456-ghi789) - In Quick Suite, ask:
Get the transcript for LMA meeting abc123-def456-ghi789
- Quick Suite should invoke
get_meeting_transcriptand return the full transcript
3.4 Test Meeting Listing
Section titled “3.4 Test Meeting Listing”- In Quick Suite, ask:
List my recent LMA meetings from the past week
- Quick Suite should invoke
list_meetingswith appropriate date filters
Step 4: Using LMA Tools in Quick Suite
Section titled “Step 4: Using LMA Tools in Quick Suite”Search Meetings
Section titled “Search Meetings”Natural Language:
Find all meetings where we discussed AWS security best practicesTool Parameters:
query: “AWS security best practices”maxResults: 10 (default)startDate: (optional) ISO 8601 dateendDate: (optional) ISO 8601 date
Get Meeting Transcript
Section titled “Get Meeting Transcript”Natural Language:
Show me the full transcript for meeting abc123-def456-ghi789Tool Parameters:
meetingId: “abc123-def456-ghi789” (required)format: “text” | “json” | “srt” (default: “text”)
Get Meeting Summary
Section titled “Get Meeting Summary”Natural Language:
Summarize meeting abc123-def456-ghi789 with action itemsTool Parameters:
meetingId: “abc123-def456-ghi789” (required)includeActionItems: true (default)includeTopics: true (default)
List Meetings
Section titled “List Meetings”Natural Language:
Show me all meetings with Sarah from last monthTool Parameters:
startDate: “2025-01-01T00:00:00Z” (optional)endDate: “2025-01-31T23:59:59Z” (optional)participant: “Sarah” (optional)status: “ENDED” | “IN_PROGRESS” | “ALL” (default: “ALL”)limit: 20 (default)
Schedule Meeting (Virtual Participant)
Section titled “Schedule Meeting (Virtual Participant)”Natural Language:
Schedule an LMA virtual participant for my Zoom meeting 123456789 tomorrow at 2pmTool Parameters:
meetingName: “Product Review Meeting” (required)meetingPlatform: “Zoom” | “Teams” | “Chime” | “Webex” (required)meetingId: “123456789” (required - numeric ID only)scheduledTime: “2025-02-01T14:00:00Z” (required - ISO 8601)meetingPassword: “secret123” (optional)
Start Meeting Now (Virtual Participant)
Section titled “Start Meeting Now (Virtual Participant)”Natural Language:
Start recording my Zoom meeting 987654321 right nowTool Parameters:
meetingName: “Emergency Standup” (required)meetingPlatform: “Zoom” | “Teams” | “Chime” | “Webex” (required)meetingId: “987654321” (required - numeric ID only)meetingPassword: “secret456” (optional)
Troubleshooting
Section titled “Troubleshooting”Issue: “Cannot connect to MCP server”
Section titled “Issue: “Cannot connect to MCP server””Symptoms:
- Quick Suite shows connection error during setup
- Integration creation fails
- MCP Server outputs not visible in CloudFormation
Solutions:
- Verify
EnableMCPparameter was set totrueduring LMA deployment (default) - Check CloudFormation Outputs tab on the main LMA stack - if MCP outputs are missing, update the stack:
- Go to CloudFormation → LMA stack → Update
- Ensure Enable MCP Server Integration parameter is set to
true - Complete the stack update
- Verify
MCPServerEndpointis correct and accessible - Confirm the LMA stack deployed successfully (check CloudFormation status)
- Test the endpoint manually:
Terminal window curl -I https://gateway-abc123.bedrock-agentcore.us-east-1.amazonaws.com/mcp
Issue: “Authentication failed” or “Invalid credentials”
Section titled “Issue: “Authentication failed” or “Invalid credentials””Symptoms:
- OAuth login fails
- “Invalid client_id or client_secret” error
Solutions:
- Double-check
MCPServerClientIdandMCPServerClientSecretfrom CloudFormation outputs (main LMA stack) - Verify you’re using the correct Cognito user credentials (email/password from LMA)
- Ensure the user exists in the LMA Cognito User Pool
- Verify OAuth scopes are configured in the Cognito client (should be
openid email profile- pre-configured by LMA) - Verify
MCPServerTokenURLandMCPServerAuthorizationURLmatch your AWS region
Issue: “Access denied” or “Permission denied”
Section titled “Issue: “Access denied” or “Permission denied””Symptoms:
- Authentication succeeds but tool calls fail
- “User does not have access to this meeting” error
Solutions:
- Non-admin users can only access their own meetings
- Verify the meeting was created by the authenticated user
- Check the
Ownerfield in LMA matches the user’s Cognito username
- Admin users can access all meetings
- Verify the user is in the “Admin” Cognito group
- Check CloudFormation parameter
AdminEmailmatches the user’s email
- Review LMA’s User-Based Access Control (UBAC) documentation
Issue: “Tool not found” or “Unknown tool”
Section titled “Issue: “Tool not found” or “Unknown tool””Symptoms:
- Quick Suite doesn’t show expected LMA tools
- Tool invocation fails with “not found” error
Solutions:
- Refresh the integration in Quick Suite:
- Go to Integrations → Select LMA integration
- Click Actions → Refresh tools
- Verify the MCP server is running:
- Check CloudWatch logs for
MCPServerAnalyticsLambda function - Look for errors in
/LMA/lambda/MCPServerAnalyticslog group
- Check CloudWatch logs for
- Confirm the Lambda function has correct environment variables:
CALLS_TABLE,TRANSCRIPT_KB_ID,MODEL_ARN
Issue: “Operation timeout” or “HTTP 424 error”
Section titled “Issue: “Operation timeout” or “HTTP 424 error””Symptoms:
- Tool calls timeout after 60 seconds
- Quick Suite shows “Operation failed” error
Solutions:
- This is a Quick Suite limitation (60-second timeout)
- For large transcripts, use pagination or filters:
- Reduce
maxResultsin search queries - Use date filters to narrow results
- Request specific meeting IDs instead of broad searches
- Reduce
- Check Lambda function timeout (should be 900 seconds)
- Review CloudWatch logs for Lambda execution time
Issue: “No meetings found” or empty results
Section titled “Issue: “No meetings found” or empty results”Symptoms:
- Search returns no results
- List meetings returns empty array
Solutions:
- Verify meetings exist in LMA:
- Log into LMA UI and check the meetings list
- Confirm meetings have completed (status = “ENDED”)
- Check date filters:
- Ensure
startDateandendDateare in ISO 8601 format - Verify timezone offsets (use UTC:
2025-01-29T00:00:00Z)
- Ensure
- For search queries:
- Verify
TRANSCRIPT_KB_IDis configured in Lambda environment - Check that the Bedrock Knowledge Base sync has completed
- Allow 15-30 minutes after meeting ends for KB indexing
- Verify
- Review UBAC permissions (see “Access denied” above)
Issue: “Invalid meeting ID format”
Section titled “Issue: “Invalid meeting ID format””Symptoms:
- “Meeting not found” error
- “Invalid meetingId parameter” error
Solutions:
- Meeting IDs in LMA are UUIDs (format:
abc123-def456-ghi789) - Get the correct meeting ID from:
- LMA UI meetings list (copy the
CallId) list_meetingstool response
- LMA UI meetings list (copy the
- Do not use meeting names or timestamps as IDs
Issue: Virtual participant tools not working
Section titled “Issue: Virtual participant tools not working”Symptoms:
schedule_meetingorstart_meeting_nowfails- “Virtual participant feature not available” error
Solutions:
- Verify the Virtual Participant stack is deployed:
- Check for
LMA-VIRTUALPARTICIPANTSTACKin CloudFormation
- Check for
- Ensure meeting platform is supported:
- Zoom, Teams, Chime, Webex (case-sensitive)
- Meeting ID format:
- Must be numeric only (e.g., “123456789”)
- Do not include platform-specific prefixes
- Check EventBridge scheduler permissions:
- Lambda needs
states:StartExecutionpermission - Verify
VPScheduleGroupNameparameter is correct
- Lambda needs
Issue: “Custom HTTP headers not supported”
Section titled “Issue: “Custom HTTP headers not supported””Symptoms:
- Error about unsupported headers
- Authentication headers rejected
Solutions:
- This is a Quick Suite limitation (no custom headers)
- LMA’s MCP server uses standard OAuth bearer tokens (supported)
- Do not attempt to add custom headers in Quick Suite configuration
- Authentication is handled automatically via OAuth flow
Debugging Tips
Section titled “Debugging Tips”Enable Detailed Logging:
- Go to CloudFormation → LMA stack → Parameters
- Update
CloudWatchLogsExpirationInDaysif needed - Check Lambda logs in CloudWatch:
- Log group:
/LMA/lambda/MCPServerAnalytics - Look for
INFO,WARNING, andERRORlevel messages
- Log group:
Test OAuth Flow Manually:
# 1. Get authorization code (open in browser)https://lma-domain.auth.us-east-1.amazoncognito.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&scope=openid+email+profile&redirect_uri=YOUR_CALLBACK_URL
# 2. Exchange code for tokenscurl -X POST https://lma-domain.auth.us-east-1.amazoncognito.com/oauth2/token \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "grant_type=authorization_code" \ -d "client_id=YOUR_CLIENT_ID" \ -d "client_secret=YOUR_CLIENT_SECRET" \ -d "code=AUTHORIZATION_CODE" \ -d "redirect_uri=YOUR_CALLBACK_URL"
# 3. Test MCP endpoint with access tokencurl -X POST https://gateway-abc123.bedrock-agentcore.us-east-1.amazonaws.com/mcp \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{"query": "test search", "maxResults": 5}'Check IAM Permissions:
- Verify
MCPServerGatewayExecutionRolehas:lambda:InvokeFunctiononMCPServerAnalyticsFunction- Trust relationship with
bedrock-agentcore.amazonaws.com
- Verify
MCPServerAnalyticsFunctionhas:dynamodb:Query,dynamodb:GetItemonEventSourcingTables3:GetObjecton recordings bucketbedrock:Retrieve,bedrock:RetrieveAndGenerateon Knowledge Basebedrock:InvokeModelon foundation models
Additional Resources
Section titled “Additional Resources”- LMA GitHub Repository
- Amazon Quick Suite MCP Integration Documentation
- LMA User-Based Access Control (UBAC)
- Model Context Protocol (MCP) Specification
- Amazon Cognito OAuth 2.0 Documentation
Security Best Practices
Section titled “Security Best Practices”- Protect Client Secrets: Never commit
MCPServerClientSecretto version control - Use HTTPS Only: All OAuth and MCP communication must use HTTPS
- Rotate Credentials: Periodically rotate Cognito client secrets
- Limit Scope: Only grant necessary OAuth scopes (
openid email profile) - Monitor Access: Review CloudWatch logs for unauthorized access attempts
- UBAC Enforcement: Ensure non-admin users can only access their own meetings
- Token Expiration: Access tokens expire after 1 hour (refresh tokens valid for 30 days)
Support
Section titled “Support”For issues or questions:
- Check the Troubleshooting section above
- Review CloudWatch logs for detailed error messages
- Open an issue on the LMA GitHub repository
- Contact your AWS support team for Quick Suite-specific issues