I have set up MSSP via telnet negotiation using Scandum's Mud Telopt Handler. Should I assume all crawlers do telnet negotiation, or should I implement plain text support as well?
It really comes down to preference I think. As far as I know, all the crawlers support both the plain text and the telnet versions of MSSP. So it really just comes down to which version of the protocol you're most comfortable with. The FUSS project went with the plain text version of the protocol because it was easier for us to implement across all three bases without having to rewrite/rework/hack at the descriptor and sockets code of the bases. However, if you do decide to go with adding Telnet negotiation handling, I recommend checking out Elanthis' libtelnet. I use it in my from-scratch base and I can't honestly see having done without it.