Database

[{"_id":ObjectId("50ed90a55502684f440001ac"),"time":"2020-05-14T14:12:46.058-0400","ServerTimeStamp":"2020-05-14T14:12:46.058-0400"},{"_id":ObjectId("50ed90a55502684f440001ad"),"time":"2020-05-14T15:12:46.058-0400","ServerTimeStamp":"2020-05-14T14:12:46.058-0400"},{"_id":ObjectId("50ed90a55502684f440001ae"),"time":"2020-05-14T18:12:46.058-0400","ServerTimeStamp":"2020-05-14T14:12:46.058-0400"}]

Query

db.collection.aggregate([{$sort:{time:1}},{$addFields:{convertedTime:{$toLong:{$dateFromString:{dateString:"$time"}}}}},{$group:{_id:"",docs:{$push:"$$ROOT"}}},{$project:{_id:0,docs:{$reduce:{input:{$slice:["$docs",1,{$size:"$docs"}]},initialValue:{docObj:[{$arrayElemAt:["$docs",0]}],previousTime:{$arrayElemAt:["$docs.convertedTime",0]}},in:{docObj:{$concatArrays:["$$value.docObj",[{$mergeObjects:["$$this",{time_difference:{$divide:[{$subtract:["$$this.convertedTime","$$value.previousTime"]},1000]}}]}]]},previousTime:"$$this.convertedTime"}}}}},{$unwind:{path:"$docs.docObj"}},{$project:{"docs.docObj.convertedTime":0}},{$replaceRoot:{newRoot:"$docs.docObj"}}])

Result