Heat oil in a large non-stick pan and add in cinnamon, cardamom and cumin seeds. As soon as they begin to sizzle, add in onion paste, and fry for 3-5 minutes on medium-high heat till it starts to brown a bit and give out oil along the sides. Add in ginger and garlic pastes and sauté for another minute or two till fragrant.
Add in the spices and tomato paste, and fry for a couple of minutes to blend well. If it starts to dry out and stick to the bottom of the pan, add in a splash of water.
Mix in blended tomatoes, yogurt and salt, and cook covered for a few minutes till well incorporated. Add in the boiled eggs, toss gently and cook covered on low heat for another 3-4 minutes.
Garnish with fresh chopped coriander leaves and serve piping hot with a side of rotis or rice, and a salad.