Don's Tools · Developers · Function Calling Schema Builder

Function calling schema builder

Build a tool definition for function calling without hand-writing JSON. Add parameters with types, enums and required flags, then export OpenAI, Anthropic or plain JSON Schema, all in your browser.

Function

Parameters

Function Calling Schema Builder lets you put together a tool definition for function calling without writing JSON by hand. Give the function a name and description, add parameters with their types, descriptions, allowed enum values and required flags, and the schema is built live. Export it as an OpenAI function tool, an Anthropic tool with an input_schema, or a plain JSON Schema for structured outputs, and copy the result. Everything runs in your browser with nothing uploaded.

Files are processed in your browser and never uploaded.

How to use Function calling schema builder

  1. Add your text

    Type or paste your text into the input box. Everything is handled by your own browser, so nothing is sent to a server.

  2. Set the options

    Choose Name, parameter name, Parameter type, description and required. The options are visible from the start, not hidden until you paste something.

  3. Run it and keep a copy

    Press + Add parameter to produce the result. Copy puts the result on your clipboard.

What this tool does

Add parameters with types and descriptions

Add each parameter with a name, a type and a description, which is the part models actually rely on to call a tool correctly.

Enum values and array item types

Enum values constrain a parameter to a fixed list, and array parameters get an item type, so the schema is precise rather than permissive.

Mark parameters required or optional

Mark each parameter required or optional and the required list is built for you, which is where hand-written schemas usually go wrong.

Export OpenAI, Anthropic or plain JSON Schema

Export in OpenAI's function format, Anthropic's tool format or plain JSON Schema, from the same definition.

Runs in your browser, nothing uploaded

The schema is built in your browser, so an unreleased tool definition is never uploaded.

Frequently asked questions

Is anything uploaded or saved?

No. The schema is built entirely in your browser as you type. Nothing is sent anywhere or stored.

What formats does it produce?

The same tool definition in three shapes: the OpenAI function tool format, the Anthropic tool format with an input_schema, and the plain JSON Schema for the parameters. Switch with the tabs and copy the one you need.

What parameter options are supported?

For each parameter you set a name, type, description and whether it is required. String parameters can have a list of allowed enum values, and array parameters let you set the item type, which covers most tool definitions.

Why mark a parameter as required?

Required parameters are listed in the schema's required array, which tells the model it must supply them. Optional ones are left out of that list so the model can omit them.

Can I use this for structured outputs too?

Yes. The JSON Schema tab gives you a clean object schema you can use anywhere a JSON Schema is accepted, including response format and structured output settings, not just function calling.

Last updated: