Make the meatballs: Mix all meatball ingredients gently in a bowl. Roll into small balls, about one inch wide.
Cook the vegetables: Heat olive oil in a large pot. Add onion, carrots, and celery. Cook for 5 minutes until soft. Add garlic and stir for 30 seconds.
Build the broth: Pour in chicken broth and diced tomatoes. Add Italian seasoning and red pepper flakes. Bring to a gentle boil.
Cook the meatballs: Carefully add meatballs to the pot. Lower heat and simmer for 15 minutes.
Add pasta and greens: Stir in pasta and cook until tender. Add spinach last and cook until wilted.
Season and serve: Taste the Italian Meatball Soup. Add salt and pepper if needed. Serve hot.