Currently there is no full client support. The reference client supports multi-sig but it requires ALL (in this case 3) keys to the in the SAME wallet.
The "missing link" is support in clients/protocol to support partial signing. i.e. deal goes good so A partially signs and passes it to B who partially signs and submits it to the network. Until that is implemented making a third party service is unlikely to be user friendly. So complete the transaction one or more parties would need to extract their private keys and send them to you so you can combine them into a single wallet and sign the multi-sig tx. I don't think anyone is going to do that.
The raw transaction API will be able to do this soon. The pull for it (
#1818) was merged into master, but I don't think it made it into the 0.7.1 release. You can use it now if you apply the pull and compile your own bitcoind. Or, wait until 0.8.0 is released Soon
TM.
If you are going to start doing this, take a look at BIP 10. It was made for something else, but I think it should work just fine here for passing the stuff around, perhaps with a few changes.
Also see
this thread for more information on using it. In particular, read Gavin's
notes. When you create a multisig address using the API, you get a script, a hash, and the address. You need the script and the hash when you go to redeem transactions sent to that address. You can recreate them if necessary, but the keys have to be in the same order when you do.