If Windows and Mac are slaves, on which OS run Jenkins master (just to reproduce your scenario)?
And if works on windows slave do you have customise some node properties for mac node?
To do this go to "Manage Jenkins" -> "Manage Nodes" -> select mac node -> configure and see if under Node Properties section Environment variables is checked and the variable PATH is setup there
That I can see on windows slave you had install a nodejs in the system, so nodejs executable could be always available. To compare behavior windows vs mac node you should select a NodeJS version different than installed in (C:\Program Files\nodejs) and add to shell
command to ensure that you are using the NodeJS of the selected tools and not that one installed in the system.