I assume by multi-step you mean more than one javascript statement.
Here's some sample code:
var script = "x = 1; y = 2; return x + y";
var result = database.Eval(script);
Console.WriteLine(result.ToInt32());
The return value of Eval is of type BsonValue, so it could be any JavaScript value. For example, the following returns a BsonDocument instead:
var script = "x = 1; y = 2; return { x : x, y : y, sum : x + y }";
var result = database.Eval(script);
Console.WriteLine(result.ToJson());
And the output of Console.WriteLine is:
{ "x" : 1.0, "y" : 2.0, "sum" : 3.0 }
I wouldn't recommend you use Javascript at the server too much. If you can simply fetch the data you need and manipulate it client side that is usually better.