In a large bowl, combine the ground beef, breadcrumbs, Parmesan cheese, egg, minced garlic, oregano, salt, and black pepper. Mix until well combined. Form the mixture into small meatballs, about 1 inch in diameter.
In a large pot or Dutch oven, heat the olive oil over medium heat. Add the meatballs in batches and brown them on all sides for about 5 minutes. Once browned, remove the meatballs from the pot and set them aside.
In the same pot, add the diced onion, carrots, and celery. Sauté for about 5-7 minutes until the vegetables begin to soften.
Add the minced garlic and diced zucchini, cooking for another 2 minutes until fragrant.
Stir in the canned tomatoes and broth, and bring the mixture to a simmer. Return the meatballs to the pot.
Add the small pasta and kidney beans to the soup. Cook for an additional 10-12 minutes, or until the pasta is al dente.
Season the soup with dried basil, salt, and pepper to taste. Let it simmer for a few more minutes to allow the flavors to meld.
Serve hot, garnished with fresh parsley or basil if desired, and enjoy!