1. A method comprising: at a server system: enabling participation by a first client and a second client in a communication session in a multi-dimensional virtual environment, the multi-dimensional virtual environment having first and second avatars respectively associated with the first and second clients and a plurality of objects distinct from the avatars, including: receiving from the first client a first annotation associated with a first object of the plurality of objects, the first annotation including text; transmitting the first annotation to the second client for display at the second client in association with the first object; receiving from the second client a second annotation associated with a second object of the plurality of objects, the second annotation including text; transmitting the second annotation to the first client for display at the first client in association with the second object; storing the first annotation and the second annotation in a database, wherein the database comprises a plurality of annotations associated with objects in a plurality of multi-dimensional virtual environments; receiving a search query from the first client or the second client, the search query including one or more terms from the first annotation or the second annotation; and searching the database to identify one or more multi-dimensional virtual environments from a group of multi-dimensional virtual environments comprising one or more objects having respective annotations matching the search query including one or more terms from the first annotation or the second annotation.