Saída de todos os vizinhos diretos em um objeto JSON

É possível escrever uma consulta no Cypher para formatar a saída da consulta a seguir em um objeto JSON?

MATCH (n:Artist{name:'Metallica'})-[r]->(m:Album)
RETURN {node: n, neighbours: { type(r): collect(m) }}

Obviamente, essa não é uma consulta válida do Cypher. Estou tentando ver se há alguma maneira de escrever uma consulta que gere o conceito proposto aqui? Um outro problema (que não sejatype(r):) está comm e precisa ser agrupado portype(r).

questionAnswers(2)

yourAnswerToTheQuestion