Have you tried defining your inputs? That way you'll enable lacing and as long as there's a logical way, the Dynamo VM will map the inputs to the function correctly.
This will first make sure to check that the input is for example indeed a point type. Secondly it'll automatically convert it to a single object, a list or a matrix depending on your definition.
This also works for python scripts, but from my experience it has a negative effect on performance when dealing with large data sets.