From 2141a2b617d9bc529a1106a2e834f03199ae476c Mon Sep 17 00:00:00 2001 From: Ishaan Jaffer Date: Thu, 12 Feb 2026 16:50:47 -0800 Subject: [PATCH] feat: add fetchDiscoverableMCPServers network function --- .../src/components/networking.tsx | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/ui/litellm-dashboard/src/components/networking.tsx b/ui/litellm-dashboard/src/components/networking.tsx index 162fdb9bc69..945ef02dd88 100644 --- a/ui/litellm-dashboard/src/components/networking.tsx +++ b/ui/litellm-dashboard/src/components/networking.tsx @@ -6097,6 +6097,34 @@ export const updateInternalUserSettings = async (accessToken: string, settings: } }; +export const fetchDiscoverableMCPServers = async (accessToken: string) => { + try { + const url = proxyBaseUrl + ? `${proxyBaseUrl}/v1/mcp/discover` + : `/v1/mcp/discover`; + + const response = await fetch(url, { + method: HTTP_REQUEST.GET, + headers: { + [globalLitellmHeaderName]: `Bearer ${accessToken}`, + "Content-Type": "application/json", + }, + }); + + if (!response.ok) { + const errorData = await response.json(); + const errorMessage = deriveErrorMessage(errorData); + handleError(errorMessage); + throw new Error(errorMessage); + } + + return await response.json(); + } catch (error) { + console.error("Failed to fetch discoverable MCP servers:", error); + throw error; + } +}; + export const fetchMCPServers = async (accessToken: string) => { try { // Construct base URL