Skip to content

fix(teams): preload member connectors for peer turns so team experts keep their MCP tools - #2744

Open
wxhking wants to merge 5 commits into
TencentCloud:developfrom
wxhking:fix/team-member-connectors
Open

wxhking wants to merge 5 commits into
TencentCloud:developfrom
wxhking:fix/team-member-connectors

Conversation

@wxhking

@wxhking wxhking commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Issue 团队调用专家,专家无法识别到连接器[bug] #2615:给专家配置 MCP 连接器后,在团队里调用该专家时连接器不可用。
  • 根因:harness 的 peer 请求(build_one_shot_request)从不填 mcp_servers/mcp_use_default,而加载连接器的 prepare_chat_mcp 只在 1:1 的 dashboard turn(api/routers/chat/turn.py:268)与 IM 通道(processor._resolve_turn_mcp_servers)调用 — peer/member 回合直达 agent graph,ChatRequest.mcp_servers 恒为 None,MCPToolMiddleware 把所有 MCP 工具剥掉(filter_tools_for_mcp_servers(None))。
  • 修复:TeamManager.prepare_peer_session(sync 与 async 两条 dispatch 共同经过的单一插入点)新增 _member_turn_mcp:镜像 1:1 的解析路径 — 专家 composer 选择 + 聊天用户 default_open(merge_turn_mcp_servers),以聊天用户为 connector_user_id 预载工具(prepare_chat_mcp),并把名单 stamp 进 PeerSession.configurable["mcp_servers"](harness 合并进请求的 documented 路径)。团队 host 侧 is_team_agent 短路保持 host 不带 MCP;加载失败只告警并丢弃名单(与 IM raise_on_failure=False 一致),回合不炸。共享专家仍按聊天用户过滤(第三方 connector 需 shared)。

Target branch

develop

Type

Bug fix

Test plan

  • tests/unit/gateway/test_global_processor_team.py 新增 3 例:
    • member trip 会被 stamp 专家+默认连接器且以聊天 uid 预载(prepare_chat_mcp 断言 connector_user_id=1);
    • callee 是团队时完全短路(prepare_chat_mcp.assert_not_awaited,host wrap-up 无 MCP);
    • 连接器加载失败降级为 None(不炸回合)。
  • 全文件 63 passed。

Checklist

  • CHANGELOG.md 已更新([Unreleased] 中文条目)
  • 相关测试已运行

@wxhking
wxhking force-pushed the fix/team-member-connectors branch 3 times, most recently from 6d5b360 to ca8107f Compare November 3, 2026 04:00
@wxhking
wxhking force-pushed the fix/team-member-connectors branch from ca8107f to e325a6b Compare November 4, 2026 02:48

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant