The Server Discovery And Monitoring Spec for MongoDB drivers defines how a client discovers and monitors a single server, a set of mongoses, or a replica set. It addresses questions like how the client determines what types of servers it is connected to, how it keeps this information up-to-date, and how it responds to changes in the server topology. The spec provides a standardized approach for all drivers, with clear explanations for any differences that may exist. It includes five sections outlining the construction of a client, monitoring the server topology, parsing responses, updating the topology view, and handling errors. The spec also includes 37 formal tests written in YAML files to ensure consistency across different drivers. Multiple reference implementations are being developed, including Java driver 2.12.1 and PyMongo 3.0, with further updates planned for Perl and other drivers over the next year.