Here is an example with a RME interface. Interface comes with a tool called totalmix (which help to route audio in any direction).
Step 1: send your music to the RME (it will go to channel 1,2 by default I called them L/R in the red circle)
Step 2: send audio to output ADAT 9/10 for example, circle orange)
Step 3: activate loopback on ADAT 9/10 circle yellow.
you can know now get the music back into the mac on adat 1 and 2.
Now let's use a DAW to host the plugin you want, if you don't have one, take REAPER you have an extended free period to test it:
Step 4: create a track (i have 2, 1 for speakers, 1 for headset because i do not have the same set of plugins for both).
Step 5: route the audio to your track (IN FX, select 2 channels, starting at adat 1 and 2)
Step 6: click on FX and add the plugins you want
Step 7: send the audio back to the interface. Click on master
Step 8: choose how many channels to send out and where (here i have 16 out from adat1 to adat 16. be careful
not to overlap with what you use to send IN, in this example, you cannot use adat 1 and 2 because you use them
for bouncing your music into the mac).
Step 9: sound now goes out of the mac to the interface again and shows up on the RME
Last step, in total mix, send the music from adat 9-10 to 1&2 if it is where your speakers are connected.
a way to look at it is:
music -> mac -> rme (1,2) -> rme(adat1,2 with lookback) -> mac in on adat 1-2 -> into daw
do whatever mix you want into the daw with the plugins you want
DAW master -> RME IN adat 9-10 -> RME out 1&2
Hope it is clear. It took me some time to debug it. Both Totalmix and a DAW are overkill but i didn't find an
easy way to do that esp. with a lot of channels. Youtube has plenty of video better than mine to explain both totalmix
and the DAW of your choice. Why there is no easy builtin way to do this on a mac is perplexing.