What will work out of the gate is to:
- Start something playing in the background (including Spotify).
- Open GarageBand, and make a new project to record the microphone.
- On the righthand side of the GarageBand window, turn on the monitor.
It will help you to go to the Advanced section of Song Settings, and switch on "Run in Background." That way the mic will be what's in the background, not your music app.
Now you'll hear your voice on top of the other audio - there might be a really big delay between when you speak/sing and when you hear it on the speaker, but this will have to do with what hardware is involved. Turning on "Send MIDI clock" might help, and turning off all effects on the track might as well... but better would be to try different hardware.
Either Audiobus 3 or AUM should do this too - neither is a free program, however, and I didn't test them.