diff --git a/client/src/components/SidePanel/MCPBuilder/MCPServerCard.tsx b/client/src/components/SidePanel/MCPBuilder/MCPServerCard.tsx index 1e538724fb..99f9eee567 100644 --- a/client/src/components/SidePanel/MCPBuilder/MCPServerCard.tsx +++ b/client/src/components/SidePanel/MCPBuilder/MCPServerCard.tsx @@ -2,9 +2,10 @@ import { useState, useRef } from 'react'; import { MCPIcon } from '@librechat/client'; import { PermissionBits, hasPermissions } from 'librechat-data-provider'; import type { MCPServerStatusIconProps } from '~/components/MCP/MCPServerStatusIcon'; +import ClickHouseIcon from '~/components/MCP/ClickHouseIcon'; import type { MCPServerDefinition } from '~/hooks'; -import MCPServerDialog from './MCPServerDialog'; import { getStatusDotColor } from './MCPStatusBadge'; +import MCPServerDialog from './MCPServerDialog'; import MCPCardActions from './MCPCardActions'; import { useMCPServerManager, useLocalize } from '~/hooks'; import { cn } from '~/utils'; @@ -70,6 +71,29 @@ export default function MCPServerCard({ setDialogOpen(true); }; + const renderIcon = () => { + if (server.config?.iconPath) { + return ( + + ); + } + + if (server.serverName.toLowerCase().includes('clickhouse')) { + return ; + } + + return ( +
+
+ ); + }; + // Determine status text for accessibility const getStatusText = () => { if (isInitializing) return localize('com_nav_mcp_status_initializing'); @@ -97,18 +121,7 @@ export default function MCPServerCard({ > {/* Server Icon with Status Dot */}
- {server.config?.iconPath ? ( - - ) : ( -
-
- )} + {renderIcon()} {/* Status dot - color indicates connection state */}