That would be one way to do it. Make sure to use Unix sockets as they are much more efficient than TCP.
That said, writing the messages out to a socket and reading it back in is still a bit silly for inter-thread communication, where the target thread could just read the message from memory. Unfortunately the capnp library doesn't currently include code for efficient inter-thread RPC. I've been meaning to write a new implementation of VatNetwork using kj::Executor for inter-thread comms but haven't had the chance yet.
So for now, what I'd actually recommend for inter-thread communications is to use kj::Executor directly. This lets you run an arbitrary lambda on another thread and have the result sent back to the calling thread.
Probably I should update the doc to not suggest inter-thread RPC until it's actually implemented... :)
-Kenton