For people who are interested in doing something similar in Go, some time ago I implemented a generic VFS that can be exposed both via FUSE and NFSv4.
It’s part of Buildbarn, a distributed build cluster for Bazel, but it can also easily be used outside that context.
Details: https://github.com/buildbarn/bb-adrs/blob/master/0009-nfsv4....
My recommendation to the authors would be to use NFSv4 instead of NFSv3. No need to mess around with that separate MOUNT protocol. Its semantics are also a lot closer to POSIX.