Claude Code 学习站

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

某个搜索工具会自动从数据库中获取并返回所有匹配的记录。由于大多数 agent 任务只需要前几条结果,这经常造成严重的延迟和 context 膨胀。重新设计该工具输出的最佳方式是什么?

  1. A返回第一页结果,并附带分页元数据(例如总数、cursor),以便 agent 在需要时获取更多结果。
  2. B静默地把响应限制为最相关的 5 条命中,其余结果在返回给 agent 之前就直接丢弃。
  3. C创建一个独立的 fetch_next_page 工具,供 agent 在首次搜索后逐页翻阅剩余结果。
  4. D增加一个 max_pages 参数,让 agent 决定工具在内部获取并拼接多少页之后再回复。

正确答案:A

解析

  • A正确:返回第一页结果外加分页元数据(总数、cursor),给了 agent 明确、可见的状态,让它只在任务确实需要时才去获取更多结果,这直接解决了延迟和 context 膨胀这两个问题,也符合 Anthropic 关于让响应 token 高效、并把截断显式化的指导。
  • B(静默取前 5 条)是错的,因为它隐瞒了还存在更多结果、以及一共有多少结果这一事实,没有给 agent 任何信号或补救路径。
  • C(单独的 fetch_next_page 工具)无谓地膨胀了工具数量,并为同一工具上一个 cursor 参数就已经能处理的事情引入了有状态的耦合。
  • D(max_pages 参数)会鼓励在单次调用内部隐式地抓取多页并带来延迟,等于把原来的问题又带了回来。

延伸阅读

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