Tool / Function Schema Converter
Paste tool definitions in any provider’s format and get them back as OpenAI, Anthropic, Gemini or MCP tools. Lint them for strict mode, or generate a schema from a JSON example.
Frequently Asked Questions
What is the difference between OpenAI and Anthropic tool formats?
OpenAI Chat Completions wraps each tool as {"type": "function", "function": {name, description, parameters}}; the Responses API flattens it to {"type": "function", name, description, parameters}. Anthropic uses {name, description, input_schema}. MCP uses {name, description, inputSchema}. The JSON Schema inside is the same idea in all of them.
What does strict mode require?
For guaranteed schema-valid arguments (OpenAI strict / structured outputs, Anthropic strict tool use), every object needs "additionalProperties": false and every property must be listed in "required"; optional fields are expressed by allowing null. Some JSON Schema keywords are not supported. The linter flags these and can fix them.
Does Gemini accept full JSON Schema?
Gemini's classic "parameters" field takes an OpenAPI-style subset, so the converter removes keywords like additionalProperties and $schema for it. Newer Gemini versions also accept full JSON Schema via parametersJsonSchema.
Is my schema sent anywhere?
No. Parsing, converting and linting all run in your browser.