Database

[{"name":"test","city":"c1","geom":{"type":"Point","coordinates":[66,33]}},{"name":"test","city":"c1","geom":{"type":"Point","coordinates":[77,22]}}]

Query

db.collection.aggregate([{$group:{_id:{city:"$city",name:"$name"},coordinates:{$push:"$geom.coordinates"}}},{$project:{_id:0,city:"$_id.city",name:"$_id.name",type:"Polygon",coordinates:["$coordinates"]}}])

Result