Back to Prompt Library
Agents
AgentsFunction CallingTool Use

Tool-Use / Function-Calling Schema Designer

Writes a complete tool definition for an AI agent to call, not just a parameter list, including when the model should and shouldn't reach for it.

Best For

  • Developers wiring an agent up to internal APIs who need the tool description precise enough that the model calls the right function instead of guessing.
  • No-code agent builders who have a working tool in plain English but need it tightened into something the model won't misuse.
  • Teams debugging an agent that keeps calling the wrong tool or skipping a required one, who need the description and parameter rules sharpened.

Prompt Template

Act as an AI agent tooling expert. I'm defining a function/tool called [TOOL NAME] for an AI agent to call, which does: [WHAT THE TOOL DOES]. Help me write a complete tool definition. Produce: 1) a tool name that's a clear verb-object pair the model won't confuse with a similarly named tool, 2) a description written as if explaining it to a new employee, not a one-line label, including when to use it and when NOT to, 3) the input parameters, marking which are required versus optional and why, 4) one example of a call and the raw output it would return, and 5) a recommendation on whether this tool should ever be force-called or left for the model to decide on its own, so I can pick the right level of control. My agent framework: [E.G. CLAUDE API / OPENAI FUNCTION CALLING / LANGGRAPH]. Other tools already available to this agent: [LIST OTHER TOOL NAMES, so you can flag naming collisions or overlapping responsibilities].

Pro Tip

On the Claude API specifically, tool_choice has four modes: auto (the model decides whether to call anything), any (it must call one of your tools but picks which), tool (it must call the one you name), and none. Both any and tool prefill the response to guarantee the call, so use them only for steps where a skipped tool call would actually break the workflow.

Example Output

A sample of what this prompt produces once you fill in the placeholders.

A tool definition for check_order_status that takes a required order_id and an optional include_tracking flag, a description explaining it should be called whenever a customer asks about delivery timing but never for refund or cancellation requests, and a note recommending auto mode since most turns won't need it at all.

Recommended Tools

How to use this prompt

  1. Copy the prompt template using the button above.
  2. Paste it into your preferred AI assistant (ChatGPT, Claude, Gemini, etc.).
  3. Replace all bracketed placeholders like [TOPIC] with your specific details.
  4. Send the prompt and refine the output as needed.