https://sabre.io/baikal/
Baikal does currently work for the desktop version of Morgen, but the app (tried Android) doesn't. It looks like the requests differ, via app this is logged:
2025/02/17 12:42:10 [error] 49#49: *133 FastCGI sent in stderr: "PHP message: Sabre\VObject\ParseException: This parser only supports VCARD and VCALENDAR files in /var/www/baikal/vendor/sabre/vobject/lib/Parser/MimeDir.php:169
Stack trace:
0 /var/www/baikal/vendor/sabre/vobject/lib/Parser/MimeDir.php(96): Sabre\VObject\Parser\MimeDir->parseDocument()
1 /var/www/baikal/vendor/sabre/vobject/lib/Reader.php(47): Sabre\VObject\Parser\MimeDir->parse()
2 /var/www/baikal/vendor/sabre/dav/lib/CalDAV/Plugin.php(513): Sabre\VObject\Reader::read()
3 /var/www/baikal/vendor/sabre/dav/lib/CalDAV/Plugin.php(258): Sabre\CalDAV\Plugin->calendarQueryReport()
4 /var/www/baikal/vendor/sabre/event/lib/WildcardEmitterTrait.php(89): Sabre\CalDAV\Plugin->report()
5 /var/www/baikal/vendor/sabre/dav/lib/DAV/CorePlugin.php(690): Sabre\DAV\Server->emit()
6 /var/www/baikal/vendor/sabre/event/lib/WildcardEmitterTrait.php(89): Sabre\DAV\CorePlugin->httpReport()
7 /var/www/baikal/vendor/sabre/dav/lib/DAV/Server.php(472): Sabre\DAV\Server->emit()
8 /var/www/baikal/vendor/sabre/dav/lib/" while reading response header from upstream, client: 172.22.0.8, server: _, request: "REPORT /dav.php/calendars/testuser/default/ HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm.sock:", host: "baikal.example.com"