Boil 4 eggs, peel them, and set aside. In a pan, heat 2 tablespoons of oil and shallow fry the boiled eggs until they turn golden brown. Remove from the pan and keep aside.
In the same pan, add 1 tablespoon of oil and sauté 1 finely chopped onion until it turns golden brown. Add 1 teaspoon of ginger-garlic paste and cook for 2 minutes.
Add 2 finely chopped tomatoes and cook until they turn soft and mushy. Add 1/2 teaspoon of turmeric powder, 1 teaspoon of red chili powder, 1 teaspoon of coriander powder, and 1/2 teaspoon of garam masala. Cook for 2-3 minutes until the spices blend well with the onion-tomato mixture.
Add 1 cup of water and bring the mixture to a boil. Reduce the heat and let it simmer for 5 minutes.
Gently place the fried eggs into the gravy and cook for another 5 minutes, allowing the eggs to absorb the flavors of the gravy.
Garnish with chopped coriander leaves and serve hot with roti, naan, or rice.