Function Schema

A function schema is the machine-readable description of a tool: its name, what it does, and a JSON Schema for its parameters, including which are required and what values are allowed. It is what a model reads before deciding whether and how to call something. It does two jobs at once, which is why it is worth writing carefully. It is documentation aimed at a reader that cannot ask clarifying questions, and it is a validation contract your own code can enforce before executing anything. Enums beat free-text strings, required fields beat optional ones with defaults, and a parameter that can only sensibly take three values should say so in the schema rather than in the description. The common failure is a schema that is technically valid and semantically vague. "query: string" gives the model no idea what a good query looks like; "query: string — a full-text search over invoice line items, e.g. 'unpaid invoices from March'" produces calls you can actually serve. Version schemas the way you version an API. A field that changes meaning silently breaks every prompt that learned the old meaning.

Next step

See tool prices side by side

Every tool we cover, by category, with its lowest listed price and a page to work out the yearly bill.

More Integrations terms