Последният аргумент на collection.aggregate() трябва да бъде обратно извикване. Драйверът mongodb очаква функция, но последният ви аргумент е обект. Ето защо получавате тази грешка. Ето ревизирания код с обратното извикване:
var MongoClient = require('mongodb').MongoClient;
var server = require('mongodb').Server;
var mongoclient = new MongoClient(new server("localhost", 27017));
mongoclient.connect("mongodb://localhost:27017/", function(err, db) {
if (err) throw err;
var db = mongoclient.db('school');
cursor = db.collection('students').aggregate(
[
{$match: {"scores.type": "homework"}},
{$unwind: "$scores"},
{
$group: {
_id: '$name',
'minimum': {$min: "$scores.score"}
}
}
], function(err, result) { // callback
console.dir(result);
db.close();
}
);
});