Yeah. I think it should also be a priority to make servers easy to run and modular AF. But yeah for a long time I was wondering when server caching and pre-indexing for various things would catch on in more clients. I prefer to be able to have a smart client be everything I need, but options would be nice. Various algorithms, note prefetching, and caching could be assisted by a smart server.
Discussion
To make it interoperable between clients, you can call the server a new relay type, specialized for augmenting resource intensive client tasks. Users could choose them just like regular relays, and can have multiple fallbacks, including the client's own capabilities.
Would require a couple of NIPs of course