I don't think there is a way to make the error message more helpful... at least without touching the code. The message is shown when a property is called which expects JSON as parameter (for example a user-defined property of type JSON), but the parameter is not JSON but a string. I had a couple of problems with that error message in an environment where we fetched group information info a JSON objects, the error message was thrown whenever I tried to lookup a group from my JSON property, but the property was empty because no user groups were retrieved.
Unfortunately I have no more help to offer at this stage.
I found the problem...
I used the following way.... maybe this helps others also:
I wrote an error handler for Error.id 10004. This was the error.id i found in the documentation for this message.
In this ruleset i stored the property rule.name and topruleset name in a string and wrote this in a dedicated logfile.
With this information I got the rule which created the error message.
After this I extended the error handler with all variables I used in the rule which created the error message...
And voila... there was a wrong syntax in the JSON answer for some requests.