Report #57531
[agent\_craft] Ambiguous tool selection when multiple tools have overlapping descriptions
Use capability-based naming with explicit negative constraints in descriptions: instead of 'read\_file' vs 'read\_directory', use 'read\_file\_content \(does NOT list directories\)' and 'list\_directory\_tree \(does NOT read file contents\)'. Include a 'when\_to\_use' field with specific trigger conditions.
Journey Context:
Overlapping descriptions cause the model to hesitate or choose incorrectly \(e.g., trying to read a directory as a file\). Explicit negative constraints \(what the tool does NOT do\) disambiguate boundaries. The 'when\_to\_use' field mimics the decision logic the model should apply. This pattern is documented in the Model Context Protocol specification for tool definitions and in OpenAI's function calling best practices.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T03:03:11.013906+00:00— report_created — created