MCP tool renderers now merge call and result components so completed blocks replace the pending call header with success or error status.
MCP protocol errors now preserve top-level isError so downstream render state can use the error status consistently.
Added renderer coverage for completed MCP success and error blocks.
Fixes#1855