Boil the baby potatoes until they are fork-tender. Drain and let them cool slightly. Once cooled, peel the potatoes and prick them with a fork.
Heat oil in a pan over medium heat. Add the chopped onions and sauté until they turn golden brown.
Add ginger and garlic paste to the pan and cook for a minute until the raw smell disappears.
Add the tomato puree and cook until the oil separates from the masala.
Stir in the Kashmiri red chili powder, turmeric powder, ground coriander, ground cumin, garam masala, and salt. Cook the spices for a couple of minutes.
Add the boiled baby potatoes to the pan and mix well with the masala.
Pour in the water and bring the gravy to a gentle simmer. Cover the pan with a lid and let it cook for 15-20 minutes on low heat until the potatoes absorb the flavors.
Once the potatoes are cooked through and the gravy has thickened, stir in the fresh cream.
Garnish with chopped coriander leaves before serving.