From 1fdeefda1b52466237eaff64d4bb0a4b173850c8 Mon Sep 17 00:00:00 2001 From: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com> Date: Thu, 3 Jul 2025 15:34:51 -0300 Subject: [PATCH] fix: enable tool mode only if a server is selected (#8865) * Enable tool mode only if a server is selected * Set tool mode as false when mcp server is cleared * Added bool to build config tool show --- .../base/langflow/components/agents/mcp_component.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/base/langflow/components/agents/mcp_component.py b/src/backend/base/langflow/components/agents/mcp_component.py index 52df3368e..696345ad5 100644 --- a/src/backend/base/langflow/components/agents/mcp_component.py +++ b/src/backend/base/langflow/components/agents/mcp_component.py @@ -120,7 +120,7 @@ class MCPToolsComponent(ComponentWithCache): info="Placeholder for the tool", value="", show=False, - tool_mode=True, + tool_mode=False, ), ] @@ -280,9 +280,12 @@ class MCPToolsComponent(ComponentWithCache): build_config["tool"]["options"] = [] build_config["tool"]["value"] = "" build_config["tool"]["placeholder"] = "" + build_config["tool_placeholder"]["tool_mode"] = False self.remove_non_default_keys(build_config) return build_config + build_config["tool_placeholder"]["tool_mode"] = True + current_server_name = field_value.get("name") if isinstance(field_value, dict) else field_value _last_selected_server = self._shared_component_cache.get("last_selected_server") or "" @@ -329,7 +332,7 @@ class MCPToolsComponent(ComponentWithCache): elif field_name == "tool_mode": build_config["tool"]["placeholder"] = "" - build_config["tool"]["show"] = not field_value + build_config["tool"]["show"] = not bool(field_value) and bool(build_config["mcp_server"]) self.remove_non_default_keys(build_config) self.tool = build_config["tool"]["value"] if field_value: