Claude Code 学习站

CCA-F 练习题库· Tool Design & MCP Integration

当一个工具成功执行完毕、但没有有意义的数据可返回时,它应该返回什么?

  1. Anull,用这个空返回值代表一次成功但无输出的调用
  2. B一个空字符串,这样 tool_result 块可以尽可能小
  3. C什么都不返回——直接关闭连接,让模型进入下一轮
  4. D一个成功确认对象:{ success: true, message: 'Operation completed' }

正确答案:D

解析

  • Dis correct。当工具成功执行但没有实质内容可返回时,它仍应返回一个结构化的成功确认,例如 { success: true, message: 'Operation completed' }。在 tool use 循环中,模型从来看不到工具的原始返回值——它只看到你回传的 tool_result——因此一个明确的、结构化的确认能让模型确认操作已经完成,并放心地继续下去。
  • AB返回 null 或空字符串会迫使模型去猜这次调用究竟是成功了还是悄无声息地失败了,这会诱发凭空臆测和重试。
  • C完全错误:tool use 协议要求每一个 tool_use 都必须有对应的 tool_result 块,而「关闭连接」且不返回任何结果会破坏或卡住 agentic 循环。这与 Anthropic 的指南一致:工具响应应当返回高信号量的信息,供模型为下一步进行推理。

延伸阅读

本题为本站自有原创练习题,非任何官方考试内容;解析对照 Anthropic 公开文档撰写, 如与最新文档不符请以官方为准。想在限时环境下检验水平,可参加 模拟考(题目与本页题库不重叠)。