Free tool

OpenAPI to MCP Converter

Paste an OpenAPI document and get MCP tool definitions and a working Python server scaffold. Everything runs in your browser — your spec is never uploaded.

Paste the full JSON document. YAML is not supported — export or convert to JSON first.
Runs entirely in your browser. Nothing you paste is uploaded, stored or logged.

The server is scaffolded. Now nobody can see what it does.

A generated MCP server is a starting point, not a demo. Deploy it, point MCP Showcase at the URL, and get a live playground your customers can actually try.

How it works

link
Paste your OpenAPI JSON

Nothing is uploaded. The conversion happens in your browser, which matters when the spec describes an internal API.

play_circle
Every operation becomes a tool

Path, query and body parameters are flattened into one JSON input schema per operation, with descriptions carried across.

checklist
Copy the server and run it

You get the MCP tool definitions as JSON and a FastMCP Python server ready to fill in auth and deploy.

From an OpenAPI document to a working MCP server

Paste an OpenAPI (or Swagger) JSON document above and this converter maps every operation to an MCP tool: the operation becomes the tool name, its summary becomes the description a model reads, and the path, query and body parameters are flattened into a single JSON input schema. You get the tool definitions on their own, plus a FastMCP Python server built around them that runs as soon as you add authentication.

The whole conversion happens in your browser. No request is made, nothing is uploaded, and nothing is stored — which matters, because an OpenAPI document is very often a description of an internal API that has no business being pasted into somebody else's server. You can verify that in your browser's network tab.

The mistake almost everyone makes first

Converting all of an API is the obvious move and it is usually the wrong one. An MCP server's tool definitions are sent to the model on every single turn, so eighty endpoints become eighty descriptions and eighty schemas in the context window of every request — and the model's ability to pick the right one falls sharply as that list grows.

Start with the handful of operations an agent genuinely needs. Add more only when something turns out to be missing. You can measure exactly what a given tool list costs with the MCP token calculator.

What the generated code does and does not do

  • Authentication is not included. The scaffold calls your API with no credentials; wiring in the header, token or OAuth flow is yours to add.
  • Path parameters are placeholders. They are interpolated into the request path, but check each one substitutes the argument you expect.
  • Request bodies behind a $ref are emitted as a generic object rather than expanded, because resolving them needs the components section. Flagged in the output rather than dropped quietly.
  • JSON only. A YAML parser cannot be loaded here without a third-party script, and this site loads none. Export your spec as JSON first — most tooling does it in one command.

Related tools and guides

A generated server is a starting point, not a demo

Running it proves the mapping worked. It does not help anyone else understand what the server is for — and a customer evaluating your MCP integration cannot read a Python file. Deploy it, point MCP Showcase at the URL, and you get a live playground with generated documentation per tool, where a prospect can try the thing in a browser instead of taking your word for it.

Frequently asked questions

Map each endpoint to one MCP tool: the operation becomes the tool name, the summary becomes its description, and the path, query and body parameters become one flat JSON input schema. This converter does that mapping from your OpenAPI document and emits a runnable Python server around it.

No. The conversion runs entirely in your browser and a YAML parser cannot be loaded without a third-party script, which this site does not use. Export your spec as JSON — most tools do this in one command — and paste that instead.

No. This tool makes no network request at all. The conversion happens in your browser, nothing is sent to our servers, and nothing is stored or logged. You can confirm it in your browser's network tab.

Almost certainly not, and this is the most common mistake when converting an API. Tool definitions are sent to the model on every turn, and selection accuracy drops as the list grows. Start with the handful of operations an agent genuinely needs and add more only when something is missing.

Authentication, which you must add. Request bodies behind a $ref are emitted as a generic object rather than expanded. And path parameters are interpolated as placeholders you should check. The scaffold is a correct starting point, not a finished server.

More free MCP tools