From 6c7a3ce4bb7f76b3ae52fe18826008c651d9733a Mon Sep 17 00:00:00 2001 From: hjlarry Date: Mon, 13 Oct 2025 14:07:26 +0800 Subject: [PATCH] sync workflow publish to mcp server --- .../components/tools/mcp/mcp-server-modal.tsx | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/web/app/components/tools/mcp/mcp-server-modal.tsx b/web/app/components/tools/mcp/mcp-server-modal.tsx index 11af81ec1a..55645957f0 100644 --- a/web/app/components/tools/mcp/mcp-server-modal.tsx +++ b/web/app/components/tools/mcp/mcp-server-modal.tsx @@ -16,6 +16,7 @@ import { useUpdateMCPServer, } from '@/service/use-tools' import cn from '@/utils/classnames' +import { webSocketClient } from '@/app/components/workflow/collaboration/core/websocket-manager' export type ModalProps = { appID: string @@ -59,6 +60,21 @@ const MCPServerModal = ({ return res } + const emitMcpServerUpdate = (action: 'created' | 'updated') => { + const socket = webSocketClient.getSocket(appID) + if (!socket) return + + const timestamp = Date.now() + socket.emit('collaboration_event', { + type: 'mcp_server_update', + data: { + action, + timestamp, + }, + timestamp, + }) + } + const submit = async () => { if (!data) { const payload: any = { @@ -71,6 +87,7 @@ const MCPServerModal = ({ await createMCPServer(payload) invalidateMCPServerDetail(appID) + emitMcpServerUpdate('created') onHide() } else { @@ -83,6 +100,7 @@ const MCPServerModal = ({ payload.description = description await updateMCPServer(payload) invalidateMCPServerDetail(appID) + emitMcpServerUpdate('updated') onHide() } }