Heat the vegetable oil in a large pot over medium heat. Add the diced onion and sauté until translucent, about 5 minutes.
Stir in the minced garlic and grated ginger, cooking for an additional minute until fragrant.
Add the red curry paste to the pot and cook for another 2 minutes, stirring frequently.
Pour in the coconut milk and vegetable broth, stirring to combine. Bring the mixture to a gentle simmer.
Add the soy sauce and lime juice, then incorporate the sliced carrots, bell pepper, snap peas, and mushrooms. If using, add the cooked chicken or tofu.
Simmer the soup for about 10-15 minutes, or until the vegetables are tender.
Taste and adjust seasoning if needed, adding more lime juice or soy sauce to your preference.
Serve hot, garnished with fresh cilantro and lime wedges on the side.