Here's my experience:
I picked up a used MIM P bass a couple years ago (I can't remember, I think it was a 2012?).
I wanted to like it, I really did. It was very pretty sunburst, white guard, maple board.
It was thin and "nothing" sounding. No meat, if you know what I mean. Lost in the mix, and very disappointing...
My instant fix is usually to add Rotos. Swingbass 66 Stainless Steel strings will brighten *anything* up (and not always for the better, lol). Even with new strings it was still flat and thin sounding.
Not one to give up on a good deal, I swapped the pickup for a vintage style hand-wound from Cavalier Pickups. It was still flat and thin (and I love Cavalier Pickups -- they are great price/performance, and usually sound great).
I then swapped the neck for one with a Pau Ferro board (because I could, and because I had it). The different fret board made very little appreciable difference (since Pau Ferro is nearly as hard as maple, that makes sense).
I then swapped the electronics for CTS/Sprague/Switchcraft. It *maybe* sounded a little better, but still not what I had in mind.
Finally I swapped on a Fender Deluxe bridge, and drilled the body holes for ferrules, and installed nickle vintage style ferrules.
For the new body-thru bridge I swapped on another new set of Rotosound Swingbass 66 stainless steel strings.
Nirvana.
I'm not a particular believer in string-thru vs top-load tone differences. Usually, strings and pickups are all that I need to adjust the tone to my liking. But in this case, it took the whole boat -- basically the body wood and pickguard are all that remains of the original bass -- but what a bass. It gives me exactly what I want a P bass to sound like...
I play it regularly, and my bandmates are always happy when I show up with that bass for a gig -- the sound guy's job is sooo easy...