U kunt aggregatie gebruiken. $unwind zal voor elke auto een document uitvoeren. Dan $match wordt gebruikt in plaats van find() in jouw voorbeeld.
const transmission = 'Manual'
const car_color = 'Yellow'
const model_year = 2013
const min_price = 3500000
const max_price = 4000000
const query = {
'cars.transmission_type': transmission,
'cars.color': car_color,
'cars.year': model_year,
'cars.PriceInINR': { '$gte': min_price, '$lte': max_price }
}
db.companies.aggregate([
{ '$unwind': '$cars' },
{ '$match': query }
])