Mash water chemistry is important (but not absolutely necessary) for conversion and wort quality. Adjusting anything else is for flavor, IMO. The general idea i follow is to match the water (as a whole) to a certain city's profile, depending on the style of beer. For example, if i'm brewing a pilsner, i try to match Pilsn's water.
As i do all-grain (w/ batch sparging), that typically means for 11gal total water (strike + sparge) i'll need to add X amount of salts. To get my mash in the proper chemical state, i'll add 1/2X or so salts to the mash. Then prior to boil, i'll add the other 1/2X salts to get the final Pilsn target water. I know to match exactly i'd need to obtain the target profile for both strike & sparge water, but with batch sparging, the chemistry of the sparge water isn't as important, so i try to get the pre-boil profile to match. It's not exact, but it's close enough for me.