1. Renewal reminders + quote-comparison intake
Policies lapse because nobody had time to flag the renewal, then a broker manually emails the client for updated details, re-keys the requirement, and rebuilds a quote comparison by hand for the tenth time this month.
Trigger: Webhook (scheduled, renewal run)
How the workflow runs
- Trigger
Renewal run. A scheduled Webhook trigger evaluates policies nearing expiry each morning (the book is fed from your broking / policy-admin system via Webhook — no first-party connector).
- Loop
Per client due for renewal. A Loop node iterates the due list so each client gets a personal, timely reminder rather than a batch blast.
- Output
Remind + request updated details. An Output node reaches the client on WhatsApp/Email with the renewal date and asks for the updated details and policy documents needed to requote.
- Agent
Build the quote-comparison intake. An Agent node structures the client's updated requirement and the collected documents, and assembles the insurer quotes into a clean side-by-side comparison — as information, not a recommendation.
- Condition
Completeness gate before quoting. A Condition node won't proceed to a comparison until every mandatory detail and document is present, so quotes aren't built on gaps.
- Approval
Broker signs off before it reaches the client. An Approval node routes the comparison and any recommendation to a licensed broker — advice and any bound quote are never sent by the agent. This is the non-negotiable control.
Channels & connectors
- Webhook
- Loop
- Knowledge base
- Approval / HITL
Outcome
Every renewal is flagged and chased on time with the requote intake assembled automatically; brokers spend their time on the advice and the comparison, not on reminders and re-keying — and no recommendation goes out unreviewed.
Why it helps
Removes the manual renewal chase and the copy-paste rebuild of comparisons, while the advice and any bound quote stay a licensed-broker decision.
Build spec
1 agent — 1 intake/comparison agent; the reminder loop is a workflow node and the advice decision is the broker's Approval step.
System prompt (paste-ready)
You are an insurance-broking assistant. For a client due for renewal, collect the updated requirement and documents, and assemble the insurer quotes you are given into a neutral side-by-side comparison as strict JSON {client_ref, requirement, quotes[{insurer, premium, sum_insured, key_terms}], missing[]}. Present facts only — do NOT recommend an insurer, rank 'best value', or state anything is the right cover; that is the broker's decision. Copy premiums and terms exactly from the quotes provided; never estimate a premium. If a mandatory detail is missing, list it in missing[] and do not proceed.MCP connectors
- Broking / policy-admin system — inbound via Webhook trigger (no first-party connector)
- Insurer quote data — via a Tool (MCP) node where an API exists, otherwise entered by the broker
Built-in tools
- knowledge_search (product rules + client policy record)
- document parsing (policy schedules/proposals)
Guardrails
- No advice from the agent — it assembles a neutral comparison; recommending, ranking or binding a quote is blocked and routed to the broker Approval node
- Completeness gate — the Condition node prevents a comparison being built on missing details or documents
- Exact premiums only — the agent copies quoted figures and never estimates or 'adjusts' a premium
Output & delivery
Renewal run → Loop reminds each due client and collects the requirement + docs → the agent builds a neutral quote comparison → Condition enforces the completeness gate → the licensed broker reviews and adds the recommendation at the Approval node before anything reaches the client.