记一个BUG:Trae里MongoDB和MySQL MCP不能共存

事情是这样的

最近在Trae里配MCP(Model Context Protocol),想同时连MongoDB和MySQL,方便AI直接查数据库写代码。

我在Trae的应用市场里,分别找到了MongoDB MCP和MySQL MCP,按说明配好。单独测的时候,俩都能用------问MongoDB的事,AI能查;问MySQL的事,AI也能查。

挺好,我以为这就搞定了。

结果两个一起开着的时候,出问题了:MySQL MCP死活调不动

我让AI查MySQL里的数据,它会直接去用命令。或者直接说"我没有找到相关的工具"。但问MongoDB的事,它秒回。

我以为是规则写错了,又去翻skills配置,改了好几版提示词,什么"你可以使用mysql工具"、"数据库连接已就绪",都没用。AI就像瞎了一样,完全看不见MySQL那套工具。

更诡异的是,只要我把MongoDB MCP关掉,MySQL立刻就活了,问啥答啥。

开始排查

我一开始怀疑是端口冲突。但MCP走的是stdio,不是HTTP,不应该抢端口。

又怀疑是配置语法有问题,但单独用都正常,说明配置没错。

翻Trae的日志,也没看到明显的报错。MySQL MCP进程应该是起来了,但AI就是看不见它。

这时候我搜到一篇火山引擎的官方文档,里面提到一个关键信息

TRAE 未读取到 MCP Server 中的工具 #

使用添加了 MCP Server 的 Builder with MCP 或者自定义智能体时,即使在对话中明确要求模型调用某个 MCP Server 中的工具,模型依然无法调用或识别该工具。
原因:

受模型上下文窗口大小的限制,TRAE 仅会预留一部分固定的上下文空间,用于向模型传递 MCP Server 及其工具的描述信息。目前存在以下限制:

  • 所有 MCP Server 描述信息的字符数上限:8,000
  • 所有 MCP Server 工具的数量上限:40

当 MCP Server 的配置达到任一上限时,TRAE 会按工具维度丢弃无法容纳的工具描述信息。
解法

  • 在智能体配置面板中,取消勾选当前任务不需要的 MCP Server 和工具。这将释放部分上下文窗口,确保核心 MCP Server 的工具能被完整读取。
  • 修改 MCP Server 和工具的 description 字段,使用更简练的描述,避免冗长。
  • 仅使用当前场景必需的工具。如果一个 MCP Server 包含大量工具(接近或超过 40 个),建议将其拆分为多个功能更专注的小型 MCP Server,并按需启用。

我也不知道是不是这个原因现在还在排查中。

相关推荐
i晟17 分钟前
Claude对话机制深度解析:为什么 Claude Code 和你越聊越懂你?每句对话都要读一整个上下文吗?
agent·claude
火锅小王子1 小时前
从 0 到 1:我用 AI Coding 撸了一套带「智能客服」的全栈电商系统
agent·vibecoding
Awu12271 小时前
💡一个 \r引发的重试循环:AI Agent CLI 在 Windows 上踩的 CRLF 匹配病
agent
小白鼠幻想家1 小时前
你的 Agent 正在被 Prompt 注入:MCP 协议 RCE 漏洞深度拆解
agent
doiito2 小时前
【Agent Harness】Gliding Horse 设计细节 -- 不跟风开发自己的AI Agent
架构·rust·agent
小白鼠幻想家2 小时前
AI Coding Agent 在老代码面前集体翻车
agent
Flynt2 小时前
接手28万行遗留代码:我用codebase-memory-mcp把代码理解时间从3天压到2小时
ai编程·claude·mcp
武子康3 小时前
调查研究-203 SpaceX IPO 总览:先别急着讲故事,先把发行事实和信息边界立住
人工智能·openai·agent
doiito4 小时前
【Agent Harness】Gliding Horse 核心设计理念,不跟风开发自己的AI Agent
ai·rust·架构设计·系统设计·ai agent
葫芦和十三12 小时前
图解 MongoDB 19|Oplog:复制的真正载体,不是文档是操作
后端·mongodb·agent