From 6e8e3469645b4b0fe05ff6252f0d18278faa324f Mon Sep 17 00:00:00 2001 From: Gabrielsv01 Date: Mon, 4 May 2026 23:03:14 -0300 Subject: [PATCH] Disable MCP discovery options based on mutual exclusivity in config section Co-authored-by: Copilot --- web/frontend/src/components/config/config-sections.tsx | 6 ++++++ web/frontend/src/components/config/form-model.ts | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/web/frontend/src/components/config/config-sections.tsx b/web/frontend/src/components/config/config-sections.tsx index 81280e20d..f5e4f618a 100644 --- a/web/frontend/src/components/config/config-sections.tsx +++ b/web/frontend/src/components/config/config-sections.tsx @@ -310,6 +310,9 @@ export function MCPSection({ hint={t("pages.config.mcp_discovery_use_bm25_hint")} layout="setting-row" checked={form.mcpDiscoveryUseBM25} + disabled={ + form.mcpDiscoveryUseBM25 && !form.mcpDiscoveryUseRegex + } onCheckedChange={(checked) => onFieldChange("mcpDiscoveryUseBM25", checked) } @@ -320,6 +323,9 @@ export function MCPSection({ hint={t("pages.config.mcp_discovery_use_regex_hint")} layout="setting-row" checked={form.mcpDiscoveryUseRegex} + disabled={ + form.mcpDiscoveryUseRegex && !form.mcpDiscoveryUseBM25 + } onCheckedChange={(checked) => onFieldChange("mcpDiscoveryUseRegex", checked) } diff --git a/web/frontend/src/components/config/form-model.ts b/web/frontend/src/components/config/form-model.ts index 50d3d1fea..55ba16e9a 100644 --- a/web/frontend/src/components/config/form-model.ts +++ b/web/frontend/src/components/config/form-model.ts @@ -180,7 +180,12 @@ function mapMCPServers(value: unknown): MCPServerForm[] { ? cfg.args.filter((item): item is string => typeof item === "string") : [] const url = asString(cfg.url) - const type = cfg.type === undefined ? (url ? "sse" : "stdio") : toMCPServerType(cfg.type) + const type = + cfg.type === undefined + ? url + ? "sse" + : "stdio" + : toMCPServerType(cfg.type) const env = asRecord(cfg.env) const headers = asRecord(cfg.headers)