I feel like I ran into this problem when I first started working on the plugin... looking at __multiarray_api.h, it appears the thing that triggers it is essentially a "import numpy.core.multiarray", but it might be hiding the actual error message. Perhaps add something like this to line 85 of filter_py.cpp and see if a more revealing error message shows up:
Code:
if (PyImport_ImportModule("numpy.core.multiarray") == NULL)
PyErr_Print();
else
fprintf(stderr, "No error occurred!?\n");