Inspetor de mensagens personalizadas do Serviço WCF

Criei um serviço WCF que usa autenticação personalizada de nome de usuário e senha e estou testando-o no aplicativo cliente com o seguinte código:

using (ServiceReferenceClient.TestServiceClient tc = new ServiceReferenceClient.TestServiceClient())
{
    tc.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
    tc.ClientCredentials.UserName.UserName = "User1";
    tc.ClientCredentials.UserName.Password = "Pwd1";
    tc.ServiceMethod(param1, param2, param3);
}

Funciona bem, mas preciso ver a solicitação SOAP real enviada ao serviço e resposta do WCF. Como posso fazer isso do meu cliente?

Sei que talvez precise escrever meu próprio inspetor de mensagens personalizado e gostaria de algumas dicas sobre como criar um

questionAnswers(1)

yourAnswerToTheQuestion