I was working on an MCP App using skybridge devtools.
At some point, my tool returned an error, and the rendering of the widget failed. It was very hard to understand there actually was an error, because the ERROR statement of the tool response is folded.
The error returned by the app is an MCP tool error
{
"content": [
{
"type": "text",
"text": "My custom error message returned from tool"
}
],
"isError": true,
"meta": {
"viewUUID": "def83c82-b108-4828-b90e-2e3565bff63a"
}
}
Would you recommend still booting an iframe and handle the error case (for info, the ChatGPT implementation is to remove the iframe in case tool response isError exists and is true)? Or instead behave as if this tool was not using a view to render and unfold tool response pane by default. This would produce the following :

I was working on an MCP App using skybridge devtools.
At some point, my tool returned an error, and the rendering of the widget failed. It was very hard to understand there actually was an error, because the ERROR statement of the tool response is folded.
The error returned by the app is an MCP tool error
{ "content": [ { "type": "text", "text": "My custom error message returned from tool" } ], "isError": true, "meta": { "viewUUID": "def83c82-b108-4828-b90e-2e3565bff63a" } }Would you recommend still booting an iframe and handle the error case (for info, the ChatGPT implementation is to remove the iframe in case tool response
isErrorexists and is true)? Or instead behave as if this tool was not using a view to render and unfold tool response pane by default. This would produce the following :