Just like in MYSQL, I want an incrementing ID.
If you suspect your data could span more than a single server (aka shards) then go with Dennis and use the native ObjectId.
If you prefer int/long id (looks better on urls) then you can start with naive implementation of a generator using the findAndModify as Chris suggested. When/if the performance/locking starts to be an issue you can upgrade your generator to implement Hi/Lo algorithm. This will result much less stress on the 'seq' collection. and practically eliminate this issue. (the client side generator is using a 'pool' and only contact the DB when it has no more free ids)