From 0bd6b24988cbfed690e7f3e70f85ddfb93035e09 Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Thu, 19 Mar 2026 04:19:55 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E7=BD=91=E9=A1=B5=20M?= =?UTF-8?q?CP=20=E9=80=89=E6=8B=A9=E9=A1=BA=E5=BA=8F=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/assets/css/extensions.less | 12 +++++++++++- web/src/components/McpServersComponent.vue | 4 ++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/web/src/assets/css/extensions.less b/web/src/assets/css/extensions.less index 1598ef88..267f130d 100644 --- a/web/src/assets/css/extensions.less +++ b/web/src/assets/css/extensions.less @@ -31,6 +31,7 @@ .search-box { padding: 12px 12px 0; + .search-input :deep(.ant-input) { height: 28px; } @@ -93,10 +94,12 @@ } &.active { + .item-icon, .server-icon { color: var(--main-color); } + .item-name { color: var(--gray-900); } @@ -126,8 +129,10 @@ align-items: center; justify-content: center; background-color: @bg-secondary; + .hint-box { text-align: center; + p { margin-top: 12px; color: var(--gray-400); @@ -167,6 +172,7 @@ padding: 0 16px; flex-shrink: 0; border-bottom: 1px solid @border-color; + &::before { border-bottom: none; } @@ -197,6 +203,7 @@ .text-muted { color: var(--gray-400); } + .empty-text { padding: 40px 0; text-align: center; @@ -206,9 +213,11 @@ // Spin wrapper for full height .full-height-spin { height: 100%; + :deep(.ant-spin-nested-loading) { height: 100%; } + :deep(.ant-spin-container) { height: 100%; display: flex; @@ -240,6 +249,7 @@ 0% { left: -30%; } + 100% { left: 100%; } @@ -249,4 +259,4 @@ opacity: 0.6; pointer-events: none; transition: opacity 0.2s; -} +} \ No newline at end of file diff --git a/web/src/components/McpServersComponent.vue b/web/src/components/McpServersComponent.vue index 39c87a6b..50b649d6 100644 --- a/web/src/components/McpServersComponent.vue +++ b/web/src/components/McpServersComponent.vue @@ -574,9 +574,9 @@ const fetchServers = async () => { const result = await mcpApi.getMcpServers() if (result.success) { servers.value = result.data || [] - // 默认选中第一个服务器 + // 默认选中排序后的第一个服务器 if (!currentServer.value && servers.value.length > 0) { - selectServer(servers.value[0]) + selectServer(filteredServers.value[0]) } else if (currentServer.value) { const latest = servers.value.find((s) => s.name === currentServer.value.name) if (latest) {