From 8140ec89a286980fb2e939218f20398b756d8386 Mon Sep 17 00:00:00 2001 From: RomneyDa Date: Wed, 28 Jan 2026 06:30:27 +0000 Subject: [PATCH] Show x/y format for MCP server tools badge - Update ToolPoliciesGroup to display enabled/total count - Badge shows 'x/y' when some tools are excluded - Badge shows 'x' when all tools are enabled (x === y) - Changed badge min-width to accommodate longer text Generated with [Continue](https://continue.dev) Co-Authored-By: Continue Co-authored-by: dallin --- .../config/components/ToolPoliciesGroup.tsx | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/gui/src/pages/config/components/ToolPoliciesGroup.tsx b/gui/src/pages/config/components/ToolPoliciesGroup.tsx index 3561f9e73..1ce708aed 100644 --- a/gui/src/pages/config/components/ToolPoliciesGroup.tsx +++ b/gui/src/pages/config/components/ToolPoliciesGroup.tsx @@ -39,10 +39,26 @@ export function ToolPoliciesGroup({ const toolGroupSettings = useAppSelector( (state) => state.ui.toolGroupSettings, ); + const toolSettings = useAppSelector((state) => state.ui.toolSettings); const isGroupEnabled = useMemo(() => { return toolGroupSettings[groupName] !== "exclude"; }, [toolGroupSettings, groupName]); + const { enabledCount, totalCount } = useMemo(() => { + const total = tools.length; + const enabled = tools.filter( + (tool) => toolSettings[tool.function.name] !== "disabled", + ).length; + return { enabledCount: enabled, totalCount: total }; + }, [tools, toolSettings]); + + const badgeText = useMemo(() => { + if (enabledCount === totalCount) { + return totalCount.toString(); + } + return `${enabledCount}/${totalCount}`; + }, [enabledCount, totalCount]); + return (
)} {displayName} -
- {tools.length} +
+ {badgeText}