fix: 修复开机立刻唤醒导致客户端 MCP 工具列表为空的问题

This commit is contained in:
3030332422
2026-01-16 18:04:04 +08:00
parent 363fffada8
commit 7094548ecf
2 changed files with 6 additions and 4 deletions
@@ -11,8 +11,7 @@ from core.handle.sendAudioHandle import sendAudioMessage, send_tts_message
from core.utils.util import remove_punctuation_and_length, opus_datas_to_wav_bytes
from core.providers.tools.device_mcp import (
MCPClient,
send_mcp_initialize_message,
send_mcp_tools_list_request,
send_mcp_initialize_message
)
TAG = __name__
@@ -56,8 +55,6 @@ async def handleHelloMessage(conn, msg_json):
conn.mcp_client = MCPClient()
# 发送初始化
asyncio.create_task(send_mcp_initialize_message(conn))
# 发送mcp消息,获取tools列表
asyncio.create_task(send_mcp_tools_list_request(conn))
await conn.websocket.send(json.dumps(conn.welcome_msg))
@@ -141,6 +141,11 @@ async def handle_mcp_message(conn, mcp_client: MCPClient, payload: dict):
logger.bind(tag=TAG).debug(
f"客户端MCP服务器信息: name={name}, version={version}"
)
await asyncio.sleep(1)
logger.bind(tag=TAG).debug("初始化完成,开始请求MCP工具列表")
await send_mcp_tools_list_request(conn)
return
elif msg_id == 2: # mcpToolsListID