I live up near DC now (used to live in kc), but have been to Richmond many times.
While the Richmond MSA is pretty good sized, the city feels considerably smaller than KC and I think KC has more "big city" attractions and culture myself. So I think you would be pleasantly surprised. Imagine a city that feels about the size of Baltimore (without the rowhouses) and with more to do and not as much crime (especially in nice areas...seems harder to avoid crime in Baltimore). And that's KC.
Both KC and Richmond have some blight and crime issues and I think KC overall is "nicer" or has more nice areas (both urban and suburban) despite having a large "ghetto" and a lot of run down areas.
You are right about KC being pretty liberal. Even the suburbs around KC are more liberal than people would think although many are quite conservative. The states of MO and KS are very conservative, KS more so only because MO has KC and StL to offset the rural areas. But even St Louis County (MO's political powerhouse) can be somewhat conservative. Urban KCMO is very liberal. The KS side is mostly suburban, except KCK which is a working class blue collar suburb/city. Politics is not my thing though, so I'll let others chime in on that. But yea, similar situation as Richmond.
KC has pro sports teams, world class performing arts center, a zoo that should become one of the country's best very soon, some great thriving urban entertainment districts, some first class museums (WW1 is as good as anything in DC), many festivals etc. The city really does hold its own and is a regional tourism and cultural center for hundreds of miles.
Richmond on the other hand has different assets. It is close to the water, Norfolk, VA Beach, the mountains and DC/Baltimore etc. Richmond has both Busch Gardens and Kings Dominion nearby, (both are larger than Worlds of Fun). There is just a LOT more to do within a couple of hours of Richmond than KC, but KC has more to do in the immediate metro area.
I guess my point is that KC is a decent city. It's a little over 2 million, but I honestly think it sort of acts and feels like a city of 3 million or more. It's lush, green, hilly and has four great seasons and some incredible spring and fall weather and KC has some of the nicest suburbs you will find anywhere and very cheap urban condos etc.
But it's in the middle of nowhere and you can only do the 3-4 hour drive to St Louis so many times. BUt KC is close to Colorado and obviously much closer to the west coast, so that's a plus if you want to see more of the country than just the east coast.
Richmond is a nice city with a lot of culture and highly underrated IMO. But as far as amenities, urbanity etc , I don't think it compares well to KC.
It's sort of a toss up. Give up being a couple of hours from mountains, oceans, big cultural cities and just tons and tons of things to do from historic sites to beaches to the nation's capital to be in a more self contained metro that has just about everything you could need on a day to day basis (and can keep you pretty entertained on weekends) all within 45 minutes with cheaper housing, less traffic and just less annoyances. Decent amusement parks, easy and cheap to attend pro sports etc.
At least in KC you can drive to St Louis and not have to worry about a 2-3 hour delay. In the midwest, 100 miles takes what google says it should take. Traffic is much worse in Richmond. The rural stretches of 95 are busier than the urban stretches of 70 during rush hour in KC and you got to get tired of that weekend DC traffic heading back and forth to the beaches and other areas clogging up Richmond highways.
Richmond has some of the best bbq on the east coast, but it's better in KC