Heat ¼ cup olive oil in a large Dutch oven over medium heat. Add diced onion, carrots, and celery. Cook for 7 to 10 minutes, stirring occasionally, until vegetables soften but do not brown. Add minced garlic and tomato paste; cook 2 more minutes until the paste darkens.
1 large onion, 2 carrots, 2 stalks celery, 4 cloves garlic, 2 tablespoons tomato paste, 0.25 cup olive oil
Add 6 cups vegetable broth and drained soaked cannellini beans to the pot. Bring to a boil, then reduce heat to low. Simmer uncovered for 45 minutes, stirring every 15 minutes. Use a wooden spoon to mash some beans against the pot side to thicken the broth.
2 cups dried cannellini beans, 6 cups vegetable broth
While soup simmers, place 2 cups cubed stale Tuscan bread in a bowl. Ladle 1 cup hot broth over the bread and let soak for 15 minutes. Add soaked bread to the pot and stir gently to combine. The bread will break apart slightly and thicken the soup.
2 cups stale Tuscan bread
Chop cavolo nero leaves into ribbons, discarding tough stems. Stir the greens into the soup. Simmer 15 more minutes until the greens have wilted and darkened. Taste and adjust salt as needed.
1 bunch cavolo nero
Remove the soup from heat and let it rest for 10 minutes. Reheat over low heat for 5 to 10 minutes before serving. This reboiling step deepens the flavor and thickens the soup as it cools.