Preheat oven to 375°F (190°C). Toss bread cubes with olive oil, garlic powder, salt, and pepper. Spread on a baking sheet and bake for 10-12 minutes, or until golden and crispy. Set aside.
Heat olive oil in a large pot over medium heat. Sauté onion and garlic until fragrant. Add carrots, celery, and zucchini, cooking for 5 minutes.
Add diced tomatoes, vegetable broth, thyme, paprika, salt, and pepper. Bring to a boil, then reduce heat and simmer for 20 minutes, or until vegetables are tender.
Stir in spinach or kale, if using, and cook for 2 minutes. Adjust seasoning as needed.
Ladle soup into bowls, top with crispy bread pieces, and garnish with fresh herbs or a drizzle of olive oil, if desired.