Even the non-server parts of Node are, at a low level, mostly implemented with libuv. And obviously, the APIs in libuv map very closely to Node, so there's less of an impedance mis-match between that and the Foundation framework.
I've written quite a bit in both Node, and in libuv directly, as well as against the Foundation APIs (although less these days, because libuv's APIs are just really, really well done). IMO, you'll write less code, with far less errors, if you decide to build on top of libuv, and you won't lose anything that Foundation gives you (they're both wrappers around the underlying Unix APIs anyway...).
I've written quite a bit in both Node, and in libuv directly, as well as against the Foundation APIs (although less these days, because libuv's APIs are just really, really well done). IMO, you'll write less code, with far less errors, if you decide to build on top of libuv, and you won't lose anything that Foundation gives you (they're both wrappers around the underlying Unix APIs anyway...).
http://nikhilm.github.io/uvbook/introduction.html is a nice introduction to libuv. You should be able to make a good decision after browsing through that.
-E