Function Calling Schema Builder
Define your AI tool's functions visually, then export the schema in the exact format your provider expects. Supports OpenAI, Anthropic, and raw JSON Schema.
Load an example or define your functions to generate a schema.
What is function calling?
Function calling lets an AI model request the execution of external functions. Instead of just generating text, the model outputs a structured function call with specific arguments. Your application then executes the function and returns the result to the model.
The schema you define tells the model what functions are available, what parameters they accept, and what constraints apply. A well-defined schema dramatically reduces argument hallucination and makes the model's tool use reliable.
OpenAI vs Anthropic format differences
Both providers use JSON Schema for parameter definitions. The main differences are field names and extras. OpenAI uses parameters and supports strict: true to enforce exact schema adherence. Anthropic uses input_schema instead and offers an optional input_examples field for providing sample inputs.
This builder handles both formats. Define your function once and switch tabs to get the correct output for whichever provider you're using. For protocol-level tool interoperability, see our guide on Model Context Protocol.
Get Insanely Good at AI
You have the schema. But what happens when an agent actually uses it? Why do some agents recover from errors while others spiral? The book takes you inside the loop and shows you where most agent projects go wrong.
Get the BookFrequently asked questions
- What is function calling in AI?
- Function calling lets a language model request the execution of external functions instead of just generating text. The model outputs a structured function call with specific arguments, your application executes it, and returns the result. This is how AI agents interact with databases, APIs, and other tools.
- What is the difference between OpenAI and Anthropic function calling formats?
- Both use JSON Schema for parameter definitions, but the field names differ. OpenAI uses "parameters" for the schema and supports strict: true to enforce exact schema adherence. Anthropic uses "input_schema" instead and offers an optional "input_examples" field for providing sample inputs. The underlying JSON Schema definitions are identical across both.
- How do I create a function calling schema?
- Define the function name, a clear description, and its parameters with types (string, number, boolean, array, object). Mark required parameters, add enum values for constrained inputs, and include descriptions for each parameter. Well-defined schemas reduce argument hallucination and make tool use reliable.