Você precisa definir a chave do objeto de consulta dinamicamente:
var name = req.params.name;
var value = req.params.value;
var query = {};
query[name] = value;
collection.findOne(query, function (err, item) { ... });
Quando você faz
{name: value}
, a chave é a string 'name'
e não o valor da variável name
.