Você pode usar Critérios.orOperador para retornar cada Documento que corresponda a pelo menos um Critério de sua lista.
Construa sua lista de Critérios em loop sobre sua lista
List<Criteria> criteriaList = new ArrayList<>();
for (item : yourList) {
criteriaList.add(Criteria.where("x").is(item.x).and("y").is(item.y));
}
Crie sua consulta usando
orOperator
:Query.query(new Criteria.orOperator(criteriaList.toArray(new Criteria[criteriaList.size()])));