Try with objectId.value() option Ex: { 'collectionName' : 'user', mapReduce : { map : 'function () { emit (this._id,{ id : this._id.valueOf(), lastname:this["last-name"]}); }', reduce : 'function (key, values) { var allDetails = []; var user = { id: null, lastname : null}; for( var index = 0; index < values.length; index++) { user.lastname = values[index].lastname; user.id = values[index].id; allDetails.push(user); user = { lastname : null}; } return {list : allDetails} }', out : 'list' } }