Database

db={"members":[{_id:1,FirstName:"first",LastName:"last",Email:"email"}],"messages":[{_id:2,createdBy:3,threads:[{message:"",attachments:[],from:4,to:[{status:"Read",recipient:1}]}]}]}

Query

db.messages.aggregate([{"$lookup":{"from":"members","localField":"threads.to.recipient","foreignField":"_id","as":"members"}}])

Result