diff --git a/web/src/pages/user-setting/mcp/mcp-operation.tsx b/web/src/pages/user-setting/mcp/mcp-operation.tsx index da4fee7f8a..8a0969aa98 100644 --- a/web/src/pages/user-setting/mcp/mcp-operation.tsx +++ b/web/src/pages/user-setting/mcp/mcp-operation.tsx @@ -16,7 +16,7 @@ export function McpOperation({ }: { mcp: IMcpServer } & Pick) { const { t } = useTranslation(); const { deleteMcpServer } = useDeleteMcpServer(); - const { handleExportMcpJson } = useExportMcp(); + const { handleExportMcpJson } = useExportMcp(mcp); const handleDelete: MouseEventHandler = useCallback(() => { deleteMcpServer([mcp.id]); diff --git a/web/src/pages/user-setting/mcp/use-export-mcp.ts b/web/src/pages/user-setting/mcp/use-export-mcp.ts index 636290c919..e07b29fa19 100644 --- a/web/src/pages/user-setting/mcp/use-export-mcp.ts +++ b/web/src/pages/user-setting/mcp/use-export-mcp.ts @@ -1,18 +1,19 @@ import { useExportMcpServer } from '@/hooks/use-mcp-request'; +import { IMcpServer } from '@/interfaces/database/mcp'; import { downloadJsonFile } from '@/utils/file-util'; import { useCallback } from 'react'; -export function useExportMcp() { +export function useExportMcp(mcp: IMcpServer) { const { exportMcpServer } = useExportMcpServer(); const handleExportMcpJson = useCallback( (ids: string[]) => async () => { const data = await exportMcpServer(ids); - if (data.code === 0) { - downloadJsonFile(data.data, `mcp.json`); + if (data.code === 0 && mcp) { + downloadJsonFile(data.data, `${mcp.name || 'mcp'}.json`); } }, - [exportMcpServer], + [exportMcpServer, mcp], ); return {