Loop thru calendar events?

Hi,

I have this automation which is triggered when an event starts in 5 minutes. I have this configuration and it works fine.

action: tts.speak
target:
  entity_id: tts.google_translate_en_com
data:
  media_player_entity_id: media_player.google_home_mini
  message: Upcoming event in 5 minutes. {{ states.calendar.work.attributes.message }}

However, today, there were 2 events set at the same time and it seems that the action only announces the first one. How can I have it announce all events?

Thanks

here a script I use

alias: Speak My Shift Pattem
sequence:
  - action: calendar.get_events
    metadata: {}
    data:
      end_date_time: |
        {{ now().date() + timedelta(days=5) }} 03:01:00
    target:
      entity_id: calendar.stephan_shift
    response_variable: agenda
  - action: tts.speak
    metadata: {}
    data:
      cache: false
      media_player_entity_id: media_player.cuckoo_clock
      message: >
      {% for event in  agenda["calendar.stephan_shift"]["events"] %} {{ event.summary }}, 
        starts on {{ as_datetime(event.start | string).strftime('%A %-d %B') }}.

        {% endfor %}
    target:
      entity_id: tts.piper

Thanks. Worked great.