The animation does get baked down as vertex animation upon export, so you can use whatever tools you need to animate your character. So yeah, you would just rig your character. You could even use advanced features like morph targets or cloth simulation, if you felt so inclined.
You will need an exporter to the MD3 format for Blender. I personally haven't worked with Blender, so I can't provide you with the details. You should try talking to fromhell, the author of OpenArena. He uses Blender to create the characters for OpenArena. Since OpenArena uses the Quake 3 tech unaltered, the process would be the same. There's a topic on the subject at the OpenArena forums, too:
http://openarena.ws/board/index.php?topic=2139.0
As for animation lengths, the shooting animation has to be exactly 6 frames long and play at a frame rate of 15. Same for the gauntlet attack animation. The weapon switch animation consists of two parts; a 5 frame weapon drop and a 4 frame weapon raise. Both of those have to play at a frame rate of 20 frames a second.
All other animations can be of differing lengths and frame rates. Ideally though, the death animations are short and to the point, because otherwise they won't finish playing before the victim respawns, which will cut off the animation immediately and look bad in the game. A character can respawn after 1.7 seconds it seems, so that would be the maximum time a death animation has to play out.
Another thing to keep in mind is that since the animation is stored as vertex animation, the more frames you add, the bigger the file will get. Some custom models that were made back in the day had so many animation frames, they ended up as a 50 meg download. These models also wouldn't load in the game normally, unless you manually increased the allocated memory in the game's console.
[url=http://ws.q3df.org/models/?model=&au=Demon+Princess]My skins on Worldspawn[/url]