Yes, it is not baked directly in client otherwise it might drain quite a lot battery. Running additional app in server is more reasonable choice. I have already said that in previous reply "... client developer(s) choose to monitor relay data on their own as solution by running custom software in server to support their client software." push.amethyst.social use firebase token to send push notifications and will wake up/run Amethyst to show notifications.
Amethyst only show Zap (9735), DM (4) and Gift-wrapped DM (1059) notifications if i'm not mistaken.
Server code for notifications:
https://github.com/vitorpamplona/amethyst-push-notif-server/blob/main/index.mjs