添加了MCP SEE支持

能不能用我不知道,先加进来。主要我没有服务,无法测试
This commit is contained in:
雅诺狐
2025-08-14 17:22:07 +08:00
committed by Windpicker-owo
parent bd1b9b279d
commit 1ed7d1248d
12 changed files with 1629 additions and 4 deletions

View File

@@ -30,6 +30,10 @@ from src.common.message import get_global_api
if global_config.memory.enable_memory:
from src.chat.memory_system.Hippocampus import hippocampus_manager
# 条件导入 MCP SSE 系统
if global_config.mcp_sse.enable:
from src.mcp import initialize_mcp_sse_manager, start_mcp_sse_manager, stop_mcp_sse_manager
# 插件系统现在使用统一的插件加载器
install(extra_lines=3)
@@ -45,6 +49,12 @@ class MainSystem:
else:
self.hippocampus_manager = None
# 根据配置条件性地初始化 MCP SSE 系统
if global_config.mcp_sse.enable:
self.mcp_sse_manager = initialize_mcp_sse_manager(global_config.mcp_sse)
else:
self.mcp_sse_manager = None
self.individuality: Individuality = get_individuality()
# 使用消息API替代直接的FastAPI实例
@@ -73,6 +83,14 @@ class MainSystem:
except Exception as e:
logger.error(f"停止热重载系统时出错: {e}")
# 停止 MCP SSE 系统
if global_config.mcp_sse.enable and self.mcp_sse_manager:
try:
asyncio.create_task(stop_mcp_sse_manager())
logger.info("🛑 MCP SSE 系统已停止")
except Exception as e:
logger.error(f"停止 MCP SSE 系统时出错: {e}")
async def initialize(self):
"""初始化系统组件"""
logger.info(f"正在唤醒{global_config.bot.nickname}......")
@@ -153,6 +171,19 @@ MaiMbot-Pro-Max(第三方改版)
await schedule_manager.load_or_generate_today_schedule()
logger.info("日程表管理器初始化成功。")
# 根据配置条件性地启动 MCP SSE 系统
if global_config.mcp_sse.enable:
if self.mcp_sse_manager:
try:
await start_mcp_sse_manager()
logger.info("MCP SSE 系统初始化成功")
except Exception as e:
logger.error(f"MCP SSE 系统初始化失败: {e}")
else:
logger.warning("MCP SSE 系统已启用但管理器未初始化")
else:
logger.info("MCP SSE 系统已禁用,跳过初始化")
try:
init_time = int(1000 * (time.time() - init_start_time))
logger.info(f"初始化完成,神经元放电{init_time}")