Devi dichiarare il _id proprietà come parte del tuo schema (l'hai commentato) o usa il _id opzione e impostala su false (stai utilizzando l'id opzione, che crea un getter virtuale per trasmettere _id in una stringa ma ha comunque creato un _id ObjectID, da qui l'errore di casting che ottieni).
Quindi o questo:
var Post = new mongoose.Schema({
_id: Number,
title: String,
content: String,
tags: [ String ]
});
O questo:
var Post = new mongoose.Schema({
title: String,
content: String,
tags: [ String ]
}, { _id: false });