Heat 2 tablespoons of coconut oil in a soup pot over medium heat.
Add the cinnamon, cardamom, and cloves and heat for 2 minutes. Add the remaining 2 tablespoons of coconut oil and sauté the onion for about 5 minutes or until golden.
Add the ginger and the bay leaves and sauté for 1 minute. Reduce the heat to low and add the cumin, fenugreek, turmeric, and coriander. Sauté for 2 minutes. Add the stock and the lentils and bring to a gentle simmer. Cook for 15 minutes.
Add the cauliflower, sweet potato, red pepper, and mushrooms and simmer for an additional 10 minutes. Add the coconut milk and simmer an additional 5 minutes, until the lentils are soft but not mushy.