Heat a skillet over medium heat and cook the onion, garlic, and mushrooms until softened and most liquid has evaporated. Set aside to cool slightly.
In a large bowl, combine the ground beef, breadcrumbs, egg, salt, pepper, and Worcestershire sauce. Mix just until evenly blended.
Divide the meat mixture in half. Press one half into the bottom of the slow cooker to form a base.
Spread the cooked mushroom mixture over the meat base, then sprinkle the Swiss cheese evenly on top.
Cover with the remaining meat mixture and press the edges to seal the filling inside. Pour the beef broth around the sides of the loaf.
Cover and cook on low for 6 to 7 hours until the internal temperature reaches 160 degrees. Let rest for 10 minutes before slicing.