From 2196a310d5ded397b7d4a3be9ee9843a56c2e463 Mon Sep 17 00:00:00 2001 From: eryajf Date: Thu, 15 Jan 2026 14:45:15 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(imcp):=20Remove=20auto-regis?= =?UTF-8?q?ter=20condition=20and=20update=20comments?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove conditional auto-registration logic and simplify tool registration - Add clarifying comments about MCP client tool registration 🔧 chore(mcpclient): Deprecate autoRegister parameter and update comments - Mark autoRegister parameter as deprecated for backward compatibility - Add note about automatic tool registration for successfully registered MCP servers --- internal/imcp/external.go | 7 ++----- internal/mcpclient/manager.go | 3 ++- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/internal/imcp/external.go b/internal/imcp/external.go index 9b00823..c3498ce 100644 --- a/internal/imcp/external.go +++ b/internal/imcp/external.go @@ -20,11 +20,8 @@ func (s *MCPServer) RegisterExternalMCPTools(ctx context.Context, manager *mcpcl // 遍历所有外部 MCP 客户端 for _, mcpClient := range manager.List() { - if !mcpClient.Config.AutoRegister { - logx.Info("⏭️ Skip auto-register for MCP: %s", mcpClient.Config.Name) - continue - } - + // 只要 MCP 客户端已加载到 Manager 中,就注册其工具 + // 注意:Manager.LoadFromConfig 已经过滤了未启用的服务器 registeredCount := 0 failedCount := 0 diff --git a/internal/mcpclient/manager.go b/internal/mcpclient/manager.go index 7e2095f..94030fe 100644 --- a/internal/mcpclient/manager.go +++ b/internal/mcpclient/manager.go @@ -330,6 +330,7 @@ func (m *Manager) CloseAll() { } // RegisterFromDB 从数据库模型注册 MCP 客户端 +// 注意: autoRegister 参数已废弃,现在只要 MCP 服务器被成功注册,其工具就会被自动注册 func (m *Manager) RegisterFromDB(name string, serverType string, command string, args []string, env map[string]string, baseURL string, headers map[string]string, timeout int, toolPrefix string, autoRegister bool) error { // 创建配置 cfg := &config.MCPServerConfig{ @@ -342,7 +343,7 @@ func (m *Manager) RegisterFromDB(name string, serverType string, command string, Timeout: timeout, IsActive: true, ToolPrefix: toolPrefix, - AutoRegister: autoRegister, + AutoRegister: autoRegister, // 已废弃,保留仅为向后兼容 } return m.Register(name, cfg)