I'd be okay with any Pokémon protecting me as long as they know Safeguard. Safeguard may not be very useful in-game, but you would know how powerful it actually is if you've seen it being used in the anime. d: It keeps you inside a big mystical aura, and nothing would ever be able to touch you as long as you're surrounded by it. Protect is a good move as well, but since it doesn't always work, it's just not as reliable as Safeguard.
Well, I wouldn't want my Pokémon to protect me. I would want us to be friends, and the like. Protect each other and all. Oh well, using its innate ability to do so. I wouldn't cheat with specific moves and all that, since I don't see how Magikarp can use Protect. He can, however, fast-talk that Sharpedo into running away, so yeah.