If the taps need to be changed exactly at the tag, then I think you'll have to make your own version of the filter block you're using, adding handling for a "set_taps" tag. None of the filter blocks pay any attention to tags and a call to set_taps() would take effect "approximately" when you mean it to.
If the taps need to change at approximately the time of the tag, then you could just either (1) forget about tags and drive the changes from your Python program, or (2) make a block (e.g., Python Embedded) that just looks for tags in the stream and calls set_taps() on your filter.