In a large bowl, combine ground beef, breadcrumbs, Parmesan, egg, garlic, oregano, salt, and pepper. Mix well and form into small meatballs.
In a large pot, heat olive oil over medium heat. Add meatballs and cook until browned on all sides. Remove meatballs and set aside.
In the same pot, add onion, carrots, and celery. Cook until vegetables are tender, about 5 minutes.
Add chicken broth, diced tomatoes, and dried basil. Bring to a boil.
Add pasta and meatballs to the pot. Reduce heat and simmer until pasta is cooked, about 10 minutes.
Stir in spinach and cook until wilted, about 2 minutes. Serve hot.