In a large pot or Dutch oven, heat the olive oil over medium heat. Add the diced onion, carrots, and celery. Sauté for about 3-4 minutes until the vegetables start to soften.
Add the garlic, dried thyme, and dried rosemary to the pot. Sauté for another 30-60 seconds until fragrant.
If using raw chicken, add diced chicken breast to the pot and cook until browned and cooked through.
Pour in a little chicken broth and scrape up the bottom of the pot to get any bits stuck to the bottom. Add the remaining broth and coconut milk. Bring the mixture to a gentle simmer and let it cook for about 10-15 minutes until the vegetables are tender.
If using cooked chicken, stir in the cooked chicken.
Add shredded cheese and heavy cream (optional), add it now for added creaminess.
Let the soup simmer for an additional 5-10 minutes to allow the flavors to meld together.
Season the soup with salt and pepper to taste.