[Bug] kimi-cu MCP 工具在客户端 model_catalog 声明 supports_search_tool 时被延迟进 tool_search 目录,网关不支持该类型时全部静默丢失(附已验证解法)
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 45/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- typescript
- Lĩnh vực
- api, cli, documentation
Hướng nghiên cứu
Start with the kimi-cu “接入其他 Agent” integration documentation and the model-catalog/tool_search configuration described in the report. Verify the captured Responses API tool list and the documented workaround using an empty experimental_supported_tools array. Done means the integration clearly explains when MCP tools are delayed or omitted and how users can make them visible.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
你运行的 Kimi Code 版本是?
kimi-cu 0.3.6(独立 computer-use MCP server,kimi-cu.exe mcp -s user,update-state.json manifest 确认版本)。
说明:本例中 MCP 客户端不是 Kimi Code,而是 OpenAI Codex CLI 0.157.0(kimi-cu「接入其他 Agent」的典型场景)。kimi-code 本体未参与链路,问题出在客户端的工具暴露策略;但该 pitfall 直接影响所有把 kimi-cu 接入第三方 Agent 的用户,且我们已在本地完成诊断并验证了解决方案,故报告至此,供集成文档/后续改进参考。
你使用的是哪个订阅计划/开放平台?
不适用(kimi-cu 为免费本地组件)。模型走自定义 provider:火山引擎方舟 coding 网关(wire_api = "responses",Responses API 兼容)。
你使用的是哪个模型?
glm-5.3-flash(Volcano Ark coding gateway, Responses API)
你的电脑平台是?
Windows 11 专业版,ARM64 设备(模板命令输出:Microsoft Windows NT 10.0.26200.0 x64)
你看到了什么结果?
kimi-cu 的 13 个 MCP 工具(list_apps / launch_app / get_app_state / click 等)全部没有出现在模型可用工具里,且无任何报错:
- 全新
codex exec会话询问模型 → 回复TOOL_MISSING(排除"旧会话快照"假设); - 用本地 mock 网关捕获客户端实际发出的
/responses请求:tools数组共 12 项 = 10 个内置 function +{"type":"tool_search"}+{"type":"web_search"},kimi-cu 工具 0 个; - 而客户端与 kimi-cu server 之间一切正常:server 进程存活、
tools/list正常返回 13 个工具、其他 MCP 方法可达——丢失发生在客户端"目录 → 请求"环节。
复现步骤
-
客户端配置自定义 provider(Responses API 网关,不支持 Codex 的
tool_search特殊工具类型); -
客户端加载的 model catalog 声明了搜索工具支持:
{ "slug": "glm-5.3-flash", "supports_search_tool": true, "experimental_supported_tools": ["tool_search"] } -
注册 kimi-cu MCP server(stdio);
-
codex exec "Call the kimi-cu MCP tool list_apps now. If not available reply TOOL_MISSING."→TOOL_MISSING; -
mock 网关抓包:请求
tools中没有任何 kimi-cu 工具,但存在{"type":"tool_search"}。
根因:catalog 声明 supports_search_tool 后,客户端把 MCP 工具放进 tool_search 延迟目录、不随请求下发;而网关不支持 tool_search 特殊工具类型,延迟工具永远无法被检索加载。同时 [features] tool_search = false 压不过 catalog 声明(抓包显示请求里仍携带 tool_search 工具)。
正常的结果应该是什么?
kimi-cu 的 13 个工具对模型可见、可调用。(网关侧已验证:模型收到工具后能真实发起调用。)
已验证的解决方案(可直接作为文档中的 workaround)
删除 catalog 的 supports_search_tool 字段、experimental_supported_tools 置空数组(注意该字段为必填,不能删除):
{ "experimental_supported_tools": [] }
效果:MCP 工具改为 {"type":"namespace"} 形态直出。端到端验证通过——kimi-cu/list_apps 真实执行并返回结果。
对照实验数据:
| catalog | 请求中工具 | 模型可调用 |
|---|---|---|
| 原catalog(tool_search 声明) | 12 个,kimi-cu 0 个 | ❌ TOOL_MISSING |
| 修改后(空 experimental_supported_tools) | namespace kimi_cu 在列,13 工具齐 |
✅ list_apps 执行成功 |
另外实测该网关对四种工具形态全部接受(HTTP 200 且工具回显正常):普通 function、mcp__ 前缀 function、带顶层 oneOf 的 parameters、namespace——问题纯粹在客户端工具暴露策略,与网关无关。
其他信息
- 建议:在 kimi-cu「接入其他 Agent」集成文档中说明该 pitfall 与 workaround;或考虑由 kimi-cu 侧在文档/自检中提示"若客户端 model catalog 声明了 tool_search 而网关不支持,工具会静默消失"。
- 相关已知 issue(不重复报告,仅引用):
- #3138 / #3665:kimi-cu 0.3.6 的
activate_window/get_app_state/click/scroll四工具 inputSchema 仍为顶层 oneOf(本机实测需 shim 摘平 4 个工具;本例已用 shim 排除该因素); - #3295:协议原生 tool search 的功能请求——与本 issue 互补:在网关不支持 tool_search 类型时,需要保证 MCP 工具能回退为直出形态。
- #3138 / #3665:kimi-cu 0.3.6 的
- Ngôn ngữ chính
- TypeScript
- Star
- 7.7k
- Fork
- 1.3k
- Merge trung bình
- 12 giờ 35 phút
- Pull request đã merge (30 ngày)
- 311
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của MoonshotAI/kimi-code
-
手机竖屏显示状态下输入框的扩展按钮没有显示Đang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
MoonshotAI/kimi-code#4040 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
顶栏字体不随字体大小缩放bugĐang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
MoonshotAI/kimi-code#4039 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
MoonshotAI/kimi-code#4010 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
MoonshotAI/kimi-code#4008 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
docs(zh): configuration/providers.md is missing the "OAuth and credential injection" sectionĐang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
MoonshotAI/kimi-code#3947 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của MoonshotAI/kimi-code
Issue tương tự
-
refactor
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 84/100
Maintainer thường phản hồi trong vòng 5 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
OHDSI/Data2Evidence#3450 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
e2e-failure ready-to-code
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
redhat-developer/rhdh-plugin-export-overlays#4011 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
automation missing-model model-sync provider:ofox
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
anomalyco/models.dev#8421 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
SlackAdapter and TelegramAdapter are not assignable to Adapter under exactOptionalPropertyTypesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 1 ngày