tool-design

Design and evaluate agent tool APIs with structured descriptions, schemas, and error messages.

9|2|Updated Jan 31, 2026
One-click install
npx skills add https://github.com/AbdullahMalik17/Hacathan_5 --skill tool-design-abdullahmalik17
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: tool-design
Source: https://github.com/AbdullahMalik17/Hacathan_5/tree/main/.claude/skills/tool-design
Command: npx skills add https://github.com/AbdullahMalik17/Hacathan_5 --skill tool-design-abdullahmalik17

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Agents fail when tool APIs are ambiguous, overlapping, or poorly documented, and no amount of prompt engineering fixes bad tool contracts. This Skill provides principles, templates, and scripts for designing tools that language-model agents can select and call correctly. ## Core Features & Use Cases - Description Engineering: Generate structured tool descriptions answering what a tool does, when to use it, what it accepts, and what it returns. - Schema and Error Design: Build consistent tool schemas with self-documenting parameters and actionable, recovery-oriented error messages. - Evaluation Utilities: Score descriptions for clarity, completeness, accuracy, actionability, and consistency using the included evaluator script. - Use Case: When building an agent that searches a knowledge base and manages tickets, use this Skill to consolidate overlapping tools, write unambiguous descriptions, and test tool selection against representative agent requests. ## Quick Start Ask the agent to review your tool definitions and rewrite their descriptions, parameters, and error messages following the tool design guidelines.

Frequently Asked Questions about tool-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write tool descriptions that agents use correctly?▼

Tool descriptions should answer four questions: what the tool does, when to use it, what inputs it accepts, and what it returns. Include concrete examples with exact formats like "CUST-000001" and avoid vague language such as "helps with" or "search the database".

How many tools should an agent have?▼

A reasonable guideline is 10-20 tools for most applications, since overlapping descriptions cause model confusion. If more tools are needed, use namespacing to group related tools under common prefixes so agents can route to the right namespace.

Should I consolidate multiple tools into one?▼

Consolidate tools that represent sequential steps of a single workflow, such as combining list_users, list_events, and create_event into one schedule_event tool. Keep tools separate when they have fundamentally different behaviors or are used in different contexts.

How do I name MCP tools to avoid tool not found errors?▼

Always use fully qualified names in the format ServerName:tool_name, such as BigQuery:bigquery_schema or GitHub:create_issue. Without the server prefix, agents may fail to locate tools when multiple MCP servers are available.

Why do agents fail to recover from tool errors?▼

Generic error messages give agents no recovery path. Design errors that state what went wrong, the expected format with an example, resolution guidance, and whether the call is retryable, so agents can correct inputs and retry.

How can I test whether my tool design works?▼

Present representative agent requests and evaluate the resulting tool calls for correctness, then identify common failure modes. You can also use an agent to analyze observed failures and propose improved descriptions, a pattern shown to reduce task completion time.