I see them as much more than this. I love using document databases because I don't have to worry about strict schemas. However, I lose a lot when I have multiple entities that are related in some way. Say I have a list of books and a list of authors. In MongoDB the book object would just have an id of the author and would then need to do a separate query to get the authors details.
Before graph databases, this sort of data would be best represented in a relational database as they have a really efficient way to join related data together.
However, with graph databases I get the best - and even better - of both of these worlds. My book entity contains a pointer to the author(s), so to query the book and their authors is even faster than a relational database.
In addition there is no fixed schema, so I am not tied down to a strict schema, thus allowing me to iterate faster. This could of course also be seen as a disadvantage - however I see no reason why a graph database couldn't build in the facility to have strong validation on the schema for specific entity types..
What is there not to like about Neo4J?