When the client parses the cluster map, it creates an adapter object from Nodes and NodeExt; the adapter is the super set of both. This contains information about which services the node supports. The state of the IServer object must be changed so that it can read this info and then allow it to be used when the Servers list is probed for a candidate server to perform an operation with it.
Simply adding fields and ensuring that they get populated should work here. Note that the IServer instances are created in the IConfigInfo.LoadConfig methods for both Couchbase and Memcached buckets.