diff --git a/platform/mcp/README.md b/platform/mcp/README.md index 0a7f9ee..341b626 100644 --- a/platform/mcp/README.md +++ b/platform/mcp/README.md @@ -31,6 +31,12 @@ Container-Neustart vollständig verworfen. TinySearch und SearXNG sind interne Abhängigkeiten des Web-MCPs und werden nicht direkt als allgemeine Werkzeuge angeboten. +Die vier Open-WebUI-Profile Fast, Medium, Large und Ultra binden den Server als +`server:mcp:web-local` standardmäßig ein. Damit steht die begrenzte lokale +Websuche in jedem neuen Chat zur Verfügung, ohne zusätzlich Open WebUIs +separate eingebaute Websuche zu aktivieren. Das Modell entscheidet weiterhin, +ob eine aktuelle Frage tatsächlich einen Werkzeugaufruf benötigt. + ## Entscheidungshilfe für das Modell Die Server- und Werkzeugbeschreibungen grenzen die Zuständigkeiten absichtlich diff --git a/platform/openwebui/install-models.sh b/platform/openwebui/install-models.sh index d8bd427..5fac74f 100644 --- a/platform/openwebui/install-models.sh +++ b/platform/openwebui/install-models.sh @@ -71,6 +71,12 @@ filter_ids = [ "local_performance_metrics", ] +# Open WebUI addresses a global MCP server as server:mcp:. +# Attach only our bounded, read-only web relay to every profile. This is not +# the built-in Open WebUI web-search feature and therefore does not create a +# second competing search path. +default_tool_ids = ["server:mcp:web-local"] + def capabilities(vision: bool) -> dict: return { "file_context": True, @@ -187,8 +193,10 @@ with con: "knowledge": None, "suggestion_prompts": None, "tags": [{"name": tag} for tag in profile["tags"]], - # Features remain available but are not forced on every request; - # this avoids needlessly injecting large tool schemas. + "toolIds": default_tool_ids, + # Built-in features remain available but are not forced on every + # request. The small, bounded local web MCP above is the only + # web-search path attached by default. "defaultFeatureIds": [], "filterIds": filter_ids, "actionIds": ["quick_actions"],