OpenAI ⇄ Anthropic Converter

Convert message arrays between OpenAI Chat Completions and Anthropic Messages API formats. Handles system messages, tool calls, image content blocks, multi-turn. In-browser, no API keys.

What is this for?

OpenAI's Chat Completions API and Anthropic's Messages API both let you send a multi-turn conversation, but they shape the JSON differently enough that prompts and tool-call traces don't drop in cleanly when you switch providers. The mismatches are small (system message placement, tool-call vs tool-use, image block shape, role: 'tool' vs content-array tool_result) but each one is a 10-minute rabbit hole when you're under deadline. This converter handles the translation so you can paste an OpenAI conversation and get back an Anthropic-shaped one (or vice versa).

What gets translated

What doesn't translate

Common gotchas