Soak basmati rice for 30 minutes before cooking. Begin cooking rice when you start preparing the meatballs.
Using a mortar and pestle or small blender, grind green chilis (or cayenne), ginger, fenugreek, coriander, turmeric, cumin, mustard seeds, pepper, salt, and lime juice into a curry paste.
In a bowl, mix ground meat, cinnamon, cardamom, pepper, garlic, chopped onion, and beaten egg into a stiff paste.
With floured hands, form the meat mixture into walnut-sized round balls.
Heat oil in a skillet over moderate heat. Fry meatballs until light brown all over. Remove and drain on paper towels.
In the same skillet with remaining fat, fry the chopped onion until just soft. Add curry paste and cook for 5 minutes.
Transfer the fried curry paste and onion mixture to a pot. Add coconut milk and stir well over medium heat.
Bring curry gravy to a simmer, then add the fried meatballs.
Simmer koftas in the gravy for 30 minutes.
Serve with basmati rice, fried pappadams, and assorted accompaniments in small side dishes.