Interactive converter
OpenAI to Anthropic tool schema converter
Translate an OpenAI function tool to Claude strict tool use while preserving optional-field intent.
APITC unwraps OpenAI parameters, keeps clear descriptions, normalizes object closure for strict use, and removes OpenAI-only wrapper fields.
Read the schema and its provider wrapper as one contract. APITC distinguishes target requirements from portable JSON Schema, applies mechanical repairs only when intent is recoverable, and identifies transformations that can change meaning.
Diagnostic procedure
Repair the schema, then recompile.
- 01
Unwrap the function
The converter accepts both Chat Completions function wrappers and Responses-style flat tools.
- 02
Audit optionality
Nullable-but-required OpenAI fields can become optional Anthropic fields when null was only a portability device.
- 03
Check complexity
APITC reports strict compilation pressure from optionals and unions.
{"type":"function","name":"lookup","parameters":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"],"additionalProperties":false},"strict":true}{"name":"lookup","input_schema":{"type":"object","properties":{"id":{"type":"string"}},"required":["id"],"additionalProperties":false},"strict":true}$.inputSchemaClose this objectOpenAI strict requires additionalProperties: false on every object.
$.inputSchemaRequired array is incompleteStrict mode requires every property in required. APITC will make limit nullable.
No account · no upload · no endpoint calledOpen the full tool schema compiler and operating notes →
FAQ
Before you ship
Does APITC upload my schema?
No. Parsing, diagnostics, and compilation run in your browser tab.
Is the compiled result guaranteed to preserve meaning?
Safe repairs are deterministic. When Anthropic cannot express a source constraint, APITC labels the transform as lossy instead of hiding it.
Protocol behavior checked against the Anthropic strict tool use. Recheck your pinned provider/API version before production deployment.