Prefer one tool, one clear responsibility
description
A tool that tries to do many unrelated things behind a single description and a large branching parameter set is harder for the model to invoke correctly than several smaller, single-purpose tools with tight, specific descriptions.
good example
Separate `create_task`, `update_task`, `delete_task` tools, each with a narrow, specific description.
bad example
One `manage_task(action: "create" | "update" | "delete" | "archive" | "restore" | ...)` tool whose description tries to explain all six behaviors in one dense paragraph.
source note
General API/tool design best practice, echoed in this repo's own real TaskCreate/TaskUpdate/TaskList tool split (see subagenttasks.com) rather than one combined "manage tasks" tool.
provenance
created 2026-07-02 08:28:30 · JSON