Off-topic for aiqbench
This story was gathered from a source we follow but falls outside AI and quantum coverage, so there is no aiqbench take for it.
Automating customer retention workflows in Amazon Quick

Learn how to build a no-code customer retention pipeline in Amazon Quick that detects at-risk customers from call transcripts and CSAT data, scores them by retention priority with a custom MCP Action, and generates personalized retention letters, reducing response time from days to minutes.
Automating customer retention workflows in Amazon Quick can turn a five-day churn-response cycle into one that takes minutes. Last quarter, a mid-size SaaS company lost 12% of its at-risk accounts because the retention team took five days to identify and contact dissatisfied customers. By the time someone manually reviewed CSAT spreadsheets and call transcripts, those customers had already churned. Amazon Quick shortens that response window from days to minutes.
This post walks through building an automated retention pipeline in Amazon Quick. The pipeline detects dissatisfied customers from structured data. It analyzes sentiment from call transcripts and scores customers by retention priority. It then generates retention offers tailored to each situation. In this post, you learn how to:
Configure a Quick Space with contact center datasets and call transcripts.
Create and register a custom MCP Action for customer scoring.
Build a Chat Agent that combines quantitative key performance indicators (KPIs) with qualitative transcript analysis.
Convert the analysis into a reusable Quick Flow.
Orchestrate the full pipeline with Amazon Quick Automate.
The retention pipeline connects four Amazon Quick components in sequence. Quick Dashboard monitors contact center KPIs, including CSAT (Customer Satisfaction Score, a 1–5 rating customers give after each call), FCR (First Call Resolution, whether the team resolved the issue in a single call), and AHT (Average Handle Time). It identifies customers with CSAT scores at or below 2.
Quick Chat Agent uses natural language to query structured data and unstructured call transcripts. It combines quantitative scores with qualitative sentiment signals. This surfaces why a customer is at risk, not just that they are.
Amazon Quick Flows turns the repeatable Chat-based analysis into a scheduled or on-demand automation that runs without manual intervention. Its final step formats the results as a structured list of at-risk customers that downstream automation can consume directly.
Quick Automate executes a multi-step pipeline. It ingests the structured at-risk customer list that the Flow produces and scores those customers through a custom MCP Action. An MCP Action is a serverless endpoint that extends Quick Automate with custom business logic. Refer to the Quick Automate MCP developer guide for details. The pipeline then ranks customers by priority, generates retention letters, and uploads them to Amazon Simple Storage Service (Amazon S3) for distribution.
You run the workflow on AWS infrastructure and can access audit trails, breakpoints, and role-based access controls.
The pipeline executes five sequential steps. It downloads the list of at-risk customers and contact center data from Amazon Simple Storage Service (Amazon S3). A scoring step ranks those customers by retention priority (based on CSAT and how recently each customer had an issue) and picks the top two highest-priority cases. The pipeline then drafts bonus-credit letters that reference each customer’s specific issues, saves them as a PDF, and uploads the finished letters to Amazon S3 for delivery and archival.
Download the at-risk customers file (Negative Sentiment.doc) as well as the structured dataset contact_center_data.csv from Amazon S3.
Score each customer on CSAT and issue recency through the custom MCP Action, and pick the top two highest-priority cases.
Draft bonus-credit letters that reference each customer’s specific issues.
Save the generated letters as a PDF document.
Store the generated letters in Amazon S3 for delivery and archival.
This solution uses Amazon S3, Amazon Quick (Dashboard, Chat, Flows, Automate), and custom MCP Actions.
A structured contact center dataset in CSV format named contact_center_data.csv (columns: customer_id, csat_score, call_date, call_reason, team_id). A sample dataset is provided with this post.
Call transcript documents named Call_transcripts.docx in PDF or TXT format.
The following sections walk through the build end to end, from preparing your Quick Space and registering the MCP Action connector to assembling the Chat Agent, Flow, and Automate workflow. Complete them in order, because each step builds on the components created before it.
A Quick Space is the data layer that gives the Chat Agent access to both structured datasets (for filtering and aggregation) and unstructured documents (for sentiment analysis). Creating the Space first helps verify that every downstream component draws from the same source of truth.
From the Quick console, select Spaces.
Select “Create space”.
For Space name, enter ContactSpace.
In the screen that follows, select Datasets.
Then select Add datasets. Search for and select the checkbox next to your contact_center_data dataset, then choose Add.
Select File Uploads, then select Upload Files, and upload your Call_transcripts.docx transcript file, then choose Open.
Wait for indexing to complete. The Status column shows Ready for both the dataset and the document.
An MCP Action connector bridges Amazon Quick and your custom business logic. It defines the connector and makes it available as an HTTP endpoint. You write an AWS Lambda function that contains your scoring algorithm wrapped in the MCP protocol, make it available through Amazon API Gateway, and register that endpoint in Amazon Quick.
The Model Context Protocol (MCP) is an open standard that lets AI assistants such as Amazon Quick call external tools in a consistent request-and-response format. If you are new to these services, AWS Lambda lets you run code without provisioning servers, and Amazon API Gateway exposes that code as a web address (an HTTP endpoint) that Amazon Quick can call. You first create the Lambda function, then put an API Gateway endpoint in front of it, and finally register that endpoint in Amazon Quick.
The following Lambda function implements a minimal MCP server. It handles the three JSON-RPC methods Amazon Quick calls during connection: initialize (the handshake), tools/list (which advertises the score_customers tool so Amazon Quick can discover it), and tools/call (which runs the scoring when the tool is invoked). The tool’s inputSchema follows JSON Schema Draft 7, which Amazon Quick requires at publish time:
Open the AWS Lambda console and choose Create function. Select Author from scratch.
For Function name, enter customer-scoring. For Runtime, choose a recent supported Python version (for example, Python 3.13). Choose Create function.
In the Code tab, replace the default code with the function shown earlier, then choose Deploy.
With the function deployed, create an API Gateway endpoint in front of it using the following AWS Command Line Interface (AWS CLI) commands. If you prefer, you can perform these same steps in the API Gateway console. Run the commands in order. Each one produces a value (such as the API ID) that you use in the next.
The create-deployment command returns a deployment id and timestamp. Construct the endpoint URL yourself using your API ID and Region in the following format: https://<API_ID>.execute-api.<REGION>.amazonaws.com/prod/mcp. Note this URL. You use it when registering the connector in Amazon Quick.
Production consideration: This walkthrough uses API Gateway directly in front of Lambda for simplicity. For production workloads, consider using Agentcore gateways in front of Lambda, which provide built-in, agent-level authentication, throttling, and observability out of the box.
From the Amazon Quick home page, select More, then select Connectors.
In the right section, select Create for your team.
Select Model Context Protocol.
In the screen that follows, Select No, create new.
Name: mcp-customer-score.
Description: Find score of customers based on aggregated KPIs.
MCP server endpoint: paste the endpoint URL https://<API_ID>.execute-api.<REGION>.amazonaws.com/prod/mcp.
Connection type: Public network.
On the Authenticate step, select Service authentication, then open the Auth configuration list and choose None. This endpoint is intentionally open for demonstration purposes. In a production environment, you would typically add an authentication layer, most commonly two-legged OAuth (2LO), to secure the endpoint. Because the scoring endpoint you deployed uses –authorization-type NONE, it accepts unauthenticated requests, so no client ID or secret is required. (Use an OAuth option only if your MCP server is protected by OAuth.)
Choose Create and continue.
Wait a few minutes, then choose the new connector in the Available section. Confirm the status shows Ready.
A custom Chat Agent connects to your ContactSpace and has access to the MCP Action connector you registered. The system prompt is the critical component. It tells the agent how to interpret the data, what questions to ask of the transcripts, and when to invoke the scoring tool versus answering from the dataset directly.
From the Quick home page, select Chat agents, then choose Blank, followed by Skip to create a custom chat agent from scratch.
For Agent name, enter Contact Center Strategy Analyst.
Under Knowledge Sources, link the ContactSpace.
Under Actions, add the mcp-customer-score connector.
Choose Launch chat agent.
The Chat Agent accesses both the structured dataset and unstructured transcripts in your Space. Use it to identify at-risk customers and understand the reasons behind their low satisfaction scores.
From the Amazon Quick home page, chat with the new custom chat agent. First, choose the Contact Center Strategy Analyst agent from the list.
The agent returns a table of customer IDs, call dates, CSAT scores, and related metrics. This identifies who is at risk but not why.
The agent reads the call transcripts and summarizes its findings. For example, it might identify that Customer 4471 expressed repeated frustration about billing errors across three calls. Customer 8832 had a single intense interaction about a service outage. This distinction matters. Repeated small frustrations require a different retention approach than one major incident.
The agent returns a structured JSON list of the at-risk customers. Copy this JSON output from the chat response and save it as a file named at_risk_customers.json, then upload it to your Amazon S3 bucket (for example, to the inputs/ prefix). The automation downloads this file from Amazon S3 in a later step.
Beyond the one-time analysis, Quick Flows lets you turn a Chat conversation into a reusable automation with a single step, so the same analysis can be re-run on demand or on a schedule. The following steps demonstrate how to convert the conversation you just had into a Flow.
In the Chat interface, choose the + on the toolbar, then select Flow.
Select Generate new flow, keep the suggested prompt and select Generate.
Review the flow then choose Publish.
Select Run mode, if required enter any inputs then start the flow.
The Flow is now a reusable automation. Share it with your team or schedule it to run weekly to regenerate the analysis whenever you need it.
Connectors required: these connectors should be part of the Automation group that we create the Automate in.
On the Amazon Quick home page, choose More, then Automations.
In the page that follows, choose the ‘Groups’ tab.
Choose the required actions, the MCP action and the Amazon S3 action. Then choose Next.
The above group will be used to create the Automation project. Follow the instructions to create the Automation project.
On the Amazon Quick home page, choose More, then Automations.
On the screen that follows, choose Create Project, then Create Project.
For the subsequent steps, follow the instructions shown below and complete the Automation project.
Choose New step and enter the following inside the chat assistant on the left that says ‘What do you want to automate’. This initial step loads call data from the raw contact center CSV in Amazon S3:
Choose Build Step 1.
Choose the close (x) symbol in the top right.
The step will be created as shown below.
Choose the add (+) symbol below the step, then choose Process step.
Toggle the mode back to planning. Enter the following in the chat window, then choose the talk symbol.
These two instructions together will recreate the full Step 3 including its nested sub-step for logging. The main step handles all the calculation logic, and the sub-step handles the per-customer logging output.
Validate the automation end to end, then commit and deploy it so it can run on a schedule.
In the canvas, choose Debug (or Test) to run the automation. It runs on its own, downloading the at-risk customers file from Amazon S3 through the Download file step. Review each step’s output in the logs panel.
Confirm the scoring step returns the top two customers, the letters reference the correct customer issues, and the S3 upload completes successfully.
When the run is correct, choose Commit to create a version.
Choose Deploy, select the committed version, and confirm the required credentials and connections (your Amazon S3 connection and the mcp-customer-score connector).
To run the automation on a schedule, on the Deployment page choose Create Trigger, then set the frequency (or a cron expression), start time, and time zone.
For more details refer to the following links.
https://docs.aws.amazon.com/quick/latest/userguide/testing-automations.html
https://docs.aws.amazon.com/quick/latest/userguide/deploying-automations.html
After deploying this pipeline in a test environment with historical contact center data, the team measured improvements across four dimensions: response time, retention rates, offer acceptance, and time to deploy. Internal testing with sample data produced these results. Your implementation may vary.
Response time dropped from days of manual identification and drafting to minutes of automated execution.
Retention rates improved among flagged customers compared to the previous reactive approach. Faster outreach, while the experience is still fresh, drove this improvement.
Offer acceptance increased when letters referenced the customer’s specific issue rather than offering a generic discount.
Time to deploy took less than one day. Business users built the full workflow through natural language and point-and-click screens.
The following table lists common issues and their resolutions.
Verify ContactSpace status. Wait for the Ready indicator before running queries.
Verify call transcript documents are uploaded to the Space Documents section.
Confirm at_risk_customers.json exists at the Amazon S3 path the Download file step references, and that the scoring agent’s instructions reference the downloaded variable.
Increase the MCP Action timeout or reduce the dataset scope.
Confirm the letter agent’s prompt references the scoring step’s output variable (inserted with @).
Delete the Automate workflow.
Delete the Flow.
Deregister the custom MCP Action endpoint if it was created specifically for this workflow.
Remove uploaded data from ContactSpace if no longer needed.
This walkthrough demonstrated how to build a customer retention pipeline that goes from raw contact center data to targeted retention actions, without writing application code. The pipeline combines KPI monitoring through Quick Dashboard and AI-powered transcript analysis through the Chat Agent. It adds repeatable automation through Quick Flows and multi-step processing through Quick Automate.
After the initial developer setup (Lambda function and API Gateway), business users built and operated the remaining components through natural language and point-and-click interfaces. The MCP Action connector extended the pipeline with custom scoring logic that reflects your organization’s specific retention criteria.
Apply this same pattern to adjacent use cases: client account health monitoring, compliance risk escalation, or proactive service recovery. Start by connecting your data to a Quick Space and asking questions through the Chat Agent. Once you have the right analysis, convert it to a Flow and orchestrate the workflow with Automate.
For more information, refer to the Amazon Quick documentation. To explore the MCP Action framework, refer to the MCP action framework.
Full text under the publisher's open licence · 2444 words
Related coverage

Evolving from legacy BI to agentic AI at Tradeshift with Amazon Quick
AWS · Jul 20, 2026

Article: Governing AI in the Cloud: A Practical Guide for Architects
InfoQ · Jun 15, 2026

Prompt engineering fundamentals for Amazon Quick
AWS · Sep 29, 2026

Digital States 2026: AI Moves From Experiment to Infrastructure
govtech.com · Sep 24, 2026