Wash tomatoes in running water well. Take a saucepan with water and add tomatoes to it. Boil them for 5 minutes or until the outer skin of tomatoes are started coming out. Switch off the flame once done and cool it down. Finely chop onions & garlic. Keep all the other ingredients ready.
Grind the tomatoes to a smooth puree without any chunks. Set aside.
Heat a saucepan with butter and toast the bread cubes until golden brown. Remove from the pan once done.Now in the same pan, add remaining butter, bay leaves, cinnamon and cloves. Fry them for a minute.
Now add chopped onions and garlic together. Fry them nicely until golden brown. Now add pureed tomatoes and mix well. Add 1/4 cup of water if required. Boil it for 5 minutes in low medium flame.
Once the soup is slightly thick, add required salt, pepper powder and fresh cream/grated cheese. Mix well. Switch off the flame and serve warm with toasted bread cubes.