Brown the onion slightly in oil in a medium skillet on low/medium heat.
Add all spices (except the Cayenne if you don't want your dish spicy), mix well with the onion then add the potatoes and the water. Cook for about 10 to 15 minutes, stirring occasionally on low heat.
Add the tomatoes, cover and cook on very low heat until potatoes are tender (about 20 minutes).
Once ready, top with cilantro and serve.