Passando parâmetros para um procedimento armazenado usando ASP

Estou tentando passar alguns parâmetros para um procedimento armazenado SQL no meu ASP clássico. Eu já vi vários posts sobre isso e não tenho certeza do que estou fazendo de errado, pois não pareço ver minha discrepância.

set conn = CreateObject("ADODB.Connection") 
conn.open ("DSN=SERVER;UID=username;PWD=pwd;Database=MyDatabase")

 set cmd = Server.CreateObject("ADODB.Command")
 set cmd.ActiveConnection = conn
 cmd.CommandType = adCmdStoredProc
 cmd.CommandText = my_proc
 cmd.Parameters.Refresh
 cmd.Parameters(1) = "MyParam"

set rs = cmd.execute

Estou recebendo o erro

Arguments are of the wrong type, are out of acceptable range, or are in conflict 
with one another.

na linhacmd.CommandType = adCmdStoredProc. Eu também tentei fazê-lo da seguinte maneira com o mesmo erro

set conn = CreateObject("ADODB.Connection") 
conn.open ("DSN=SERVER;UID=username;PWD=pwd;Database=MyDatabase")

 set cmd = Server.CreateObject("ADODB.Command")
 set cmd.ActiveConnection = conn
 cmd.CommandType = adCmdStoredProc
 cmd.CommandText = my_proc
 cmd.Parameters.Refresh
 cmd.Parameters.Append cmd.CreateParameter("@MyParam, adVarWChar, adParamInput, 50, "test")

set rs = cmd.execute

questionAnswers(3)

yourAnswerToTheQuestion