@@ -29,6 +29,7 @@ import { Tab, TabContent, TabHeader } from "../common/Tab"
2929import McpToolRow from "./McpToolRow"
3030import McpResourceRow from "./McpResourceRow"
3131import McpEnabledToggle from "./McpEnabledToggle"
32+ import { McpErrorRow } from "./McpErrorRow"
3233
3334type McpViewProps = {
3435 onDone : ( ) => void
@@ -42,6 +43,7 @@ const McpView = ({ onDone }: McpViewProps) => {
4243 enableMcpServerCreation,
4344 setEnableMcpServerCreation,
4445 } = useExtensionState ( )
46+
4547 const { t } = useAppTranslation ( )
4648
4749 return (
@@ -330,6 +332,9 @@ const ServerRow = ({ server, alwaysAllowMcp }: { server: McpServer; alwaysAllowM
330332 { t ( "mcp:tabs.resources" ) } (
331333 { [ ...( server . resourceTemplates || [ ] ) , ...( server . resources || [ ] ) ] . length || 0 } )
332334 </ VSCodePanelTab >
335+ < VSCodePanelTab id = "errors" >
336+ { t ( "mcp:tabs.errors" ) } ({ server . errorHistory ?. length || 0 } )
337+ </ VSCodePanelTab >
333338
334339 < VSCodePanelView id = "tools-view" >
335340 { server . tools && server . tools . length > 0 ? (
@@ -372,6 +377,23 @@ const ServerRow = ({ server, alwaysAllowMcp }: { server: McpServer; alwaysAllowM
372377 </ div >
373378 ) }
374379 </ VSCodePanelView >
380+
381+ < VSCodePanelView id = "errors-view" >
382+ { server . errorHistory && server . errorHistory . length > 0 ? (
383+ < div
384+ style = { { display : "flex" , flexDirection : "column" , gap : "8px" , width : "100%" } } >
385+ { [ ...server . errorHistory ]
386+ . sort ( ( a , b ) => b . timestamp - a . timestamp )
387+ . map ( ( error , index ) => (
388+ < McpErrorRow key = { `${ error . timestamp } -${ index } ` } error = { error } />
389+ ) ) }
390+ </ div >
391+ ) : (
392+ < div style = { { padding : "10px 0" , color : "var(--vscode-descriptionForeground)" } } >
393+ { t ( "mcp:emptyState.noErrors" ) }
394+ </ div >
395+ ) }
396+ </ VSCodePanelView >
375397 </ VSCodePanels >
376398
377399 { /* Network Timeout */ }
0 commit comments