From c96cc9d261bcd6aaa7296d02e64a5caddb2a21e9 Mon Sep 17 00:00:00 2001 From: mateo-berri <277851410+mateo-berri@users.noreply.github.com> Date: Tue, 19 May 2026 07:16:17 +0000 Subject: [PATCH] fix(mcp_servers): clean up user fields defs from localStorage on server delete --- .../src/components/mcp_tools/mcp_servers.tsx | 3 ++- ui/litellm-dashboard/src/components/mcp_tools/userFields.ts | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ui/litellm-dashboard/src/components/mcp_tools/mcp_servers.tsx b/ui/litellm-dashboard/src/components/mcp_tools/mcp_servers.tsx index 0b6bcbd9079..bdf37a5855c 100644 --- a/ui/litellm-dashboard/src/components/mcp_tools/mcp_servers.tsx +++ b/ui/litellm-dashboard/src/components/mcp_tools/mcp_servers.tsx @@ -22,7 +22,7 @@ import MCPDiscovery from "./mcp_discovery"; import { ByokCredentialModal } from "./ByokCredentialModal"; import { getSecureItem } from "@/utils/secureStorage"; import UserFieldsModal from "./UserFieldsModal"; -import { getMissingUserFields, getUserFieldDefs } from "./userFields"; +import { getMissingUserFields, getUserFieldDefs, removeUserFieldDefs } from "./userFields"; import { ExclamationCircleFilled } from "@ant-design/icons"; const { Text: AntdText, Title: AntdTitle } = Typography; @@ -231,6 +231,7 @@ const MCPServers: React.FC = ({ accessToken, userRole, userID }) try { setIsDeletingServer(true); await deleteMCPServer(accessToken, serverIdToDelete); + removeUserFieldDefs(serverIdToDelete); NotificationsManager.success("Deleted MCP Server successfully"); refetch(); } catch (error) { diff --git a/ui/litellm-dashboard/src/components/mcp_tools/userFields.ts b/ui/litellm-dashboard/src/components/mcp_tools/userFields.ts index 98d2abfd6f3..7fa457c53b1 100644 --- a/ui/litellm-dashboard/src/components/mcp_tools/userFields.ts +++ b/ui/litellm-dashboard/src/components/mcp_tools/userFields.ts @@ -67,6 +67,11 @@ export function setUserFieldValues( ); } +export function removeUserFieldDefs(serverId: string): void { + if (typeof window === "undefined") return; + window.localStorage.removeItem(DEFS_KEY(serverId)); +} + export function getMissingUserFields( serverId: string, userId: string,