A blueprint for a truly successful collaboratory system does not exist. Hence:
Need an extensible system with very few limitations.
System must not define application specific protocols, application programming language, or limit in whatever way functionality of collaboratory applications