In a large pot, heat the olive oil over medium heat. Add the diced onion, carrots, and celery. Sauté for about 5 minutes, until the vegetables have softened.
Stir in the minced garlic and cook for an additional 1 minute, until fragrant.
Pour in the chicken broth and add the canned tomatoes, dried basil, and oregano. Season with salt and pepper. Bring the mixture to a boil.
While the soup is boiling, prepare the meatballs. In a mixing bowl, combine the ground beef (or turkey), breadcrumbs, egg, and a pinch of salt and pepper. Mix until well combined and form into small meatballs (about 1 inch in diameter).
Once the soup is boiling, carefully drop the meatballs into the pot. Reduce the heat to medium-low and simmer for about 10 minutes until the meatballs are cooked through.
Add the tortellini to the pot and cook according to package instructions, usually about 3-5 minutes, until the pasta is tender.
Stir in the fresh spinach leaves and cook for an additional 1-2 minutes until wilted.
Ladle the soup into bowls and top with grated Parmesan cheese before serving.