Database

[{"_id":"5afa9472e937b7254a306ff6","import_date":"2018-05-15T08:04:02.813Z","some_more_things":"foo","meta":{"participants":[{"name":"Ben"},{"name":"Mary"}],"messages":[{"tokens":[{"token":"What"},{"token":"do"},{"token":"you"},{"token":"do"},{"token":"today"}],"time":"2018-05-09T08:38:19.000Z"},{"tokens":[{"token":"Just"},{"token":"lying"},{"token":"around"}],"time":"2018-05-09T08:40:08.000Z"},{"tokens":[{"token":"What"},{"token":"about"},{"token":"you"}],"time":"2018-05-09T08:40:11.000Z"}]}}]

Query

db.collection.aggregate([{$addFields:{"meta.messages":{$filter:{input:"$meta.messages",as:"m",cond:{$anyElementTrue:{$map:{input:"$$m.tokens",in:{$gte:[{$indexOfBytes:["$$this.token","What"]},0]}}}}}}}}])

Result