mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2026-09-19 17:24:57 +02:00
ui: gate MCP server avatars on conversation tool policy
Servers whose tools are disabled for the current conversation (MCP category or server-scoped key) no longer show as enabled for the chat. Assisted-by: pi
This commit is contained in:
committed by
GitHub
parent
c7dd200b37
commit
d018525528
@@ -2,8 +2,8 @@
|
||||
import McpLogo from './McpLogo.svelte';
|
||||
import * as Tooltip from '$lib/components/ui/tooltip';
|
||||
import { ICON_CLASS_DEFAULT, MAX_DISPLAYED_MCP_AVATARS } from '$lib/constants';
|
||||
import { HealthCheckStatus } from '$lib/enums';
|
||||
import { mcpStore } from '$lib/stores';
|
||||
import { HealthCheckStatus, ToolSource } from '$lib/enums';
|
||||
import { conversationsStore, mcpStore } from '$lib/stores';
|
||||
|
||||
interface Props {
|
||||
class?: string;
|
||||
@@ -13,7 +13,15 @@
|
||||
let { class: className = '', onclick }: Props = $props();
|
||||
|
||||
let mcpServers = $derived(mcpStore.getServers().filter((s) => s.enabled));
|
||||
let enabledMcpServersForChat = $derived(mcpServers.filter((s) => s.url.trim()));
|
||||
// respect the active conversation's tool policy, not just global enablement
|
||||
let enabledMcpServersForChat = $derived(
|
||||
mcpServers.filter(
|
||||
(s) =>
|
||||
s.url.trim() &&
|
||||
conversationsStore.preferences.isCategoryEnabled(ToolSource.MCP) &&
|
||||
conversationsStore.preferences.isServerToolsEnabled(s.id)
|
||||
)
|
||||
);
|
||||
let healthyEnabledMcpServers = $derived(
|
||||
enabledMcpServersForChat.filter((s) => {
|
||||
const healthState = mcpStore.getHealthCheckState(s.id);
|
||||
|
||||
Reference in New Issue
Block a user