Dokumentationen säger "För närvarande kan returvärdet från en reduceringsfunktion inte vara en array (det är vanligtvis ett objekt eller ett tal)."
Så skapa ett objekt istället och slå in din array i det. Se också till att utmatningen av reducering är densamma som ingångstypen, så du måste avge ett liknande värde i kartoperationen.
MEN ... varför använda Map-Reduce för att göra detta? Om du sänder ut _id-värdet finns det inget att minska eftersom varje nyckel kommer att vara unik. Varför inte bara upprepa samlingen genom att kopiera värdena och uppdatera varje post en efter en?