I have a given set of MP3 audio files of varying audio levels. I would like to know how I can automatically normalize all of these files, so the volume is amplified/raised on the quieter files, and lowered/muted on the louder files.

How can I go about accomplishing this? Is there an existing (preferably free) software tool which can help do this?

MP3Gain does not just do peak normalization, as many normalizers do. Instead, it does some statistical analysis to determine how loud the file actually sounds to the human ear.
Also, the changes MP3Gain makes are completely lossless. There is no quality lost in the change because the program adjusts the mp3 file directly, without decoding and re-encoding.

MP3Gain is great for this use, but I have to add that changes made by it are NOT all the time loseless. Depending on the change in dB you are asking for, there is a loss, the program warns you about it (that's when the gain number displays in red).
–
GnoupiAug 9 '09 at 16:13

mediamonkey will set replay-gain idv3 fields of your mp3 files quite nicely.
highlight the file(s) and right-click [Analyze Volume] to set the replay-gain fields.
I think it can do it automatically as well (config option someplace)

Audiograbber will normalize the volume level of audio. It does a nice job of it:

Audiograbber is a beautiful piece of software that grabs digital audio
from cd's. Audiograbber can automatically normalize the music, delete
silence from the start and/or end of tracks, and encode them to a
variety of formats including MP3. Audiograbber can download and upload
disc info from freedb, an Internet compact disc database. You can even
record your vinyl LP's or cassette tapes with Audiograbber and make
wav's or MP3's of them.