mcpify
mcpify
Turn any REST API into an MCP server in one command. Point mcpify at an OpenAPI
spec and every endpoint becomes a tool your AI agent (Claude, Cursor, Windsurf, …) can
call — no glue code, no per-endpoint wrappers.
mcpify https://api.example.com/openapi.jsonThat's it. Every operation in the spec is now a live MCP tool.
Why
MCP is how AI agents call real tools. But wiring an
existing API into MCP means hand-writing a tool wrapper for every endpoint — tedious and
stale the moment the API changes. Almost every API already publishes an OpenAPI spec.
mcpify reads that spec and generates the whole MCP server at runtime, so:
Zero per-endpoint code — N endpoints → N tools, automatically.
Always in sync — regenerate from the spec; no wrappers to maintain.
Auth-aware — pass an API key / bearer token once, applied to every call.
Related MCP server: APIFold
Install
pipx install mcpify-cli # or: uvx mcpify-cli ...Use
Preview the tools a spec produces (no server):
mcpify --list examples/petstore-mini.yamlRun it as an MCP server (stdio):
mcpify https://petstore3.swagger.io/api/v3/openapi.json
mcpify ./openapi.yaml --base-url https://staging.internal.api
mcpify ./openapi.yaml --auth "Authorization: Bearer $TOKEN" # or set MCPIFY_AUTHPlug it into Claude
Add to your MCP client config (Claude Desktop / Claude Code mcp.json):
{
"mcpServers": {
"petstore": {
"command": "mcpify",
"args": ["https://petstore3.swagger.io/api/v3/openapi.json"]
}
}
}Restart the client and ask: "list the available pets" — Claude calls the API directly.
How it works
Load the OpenAPI 3.x document (URL or file, JSON or YAML).
Walk every path/method into an
Operationwith a generated JSON input schema.Serve them over MCP; each tool call is mapped to a live HTTP request (path, query, header params and JSON bodies all handled) and the response is returned to the agent.
Supported
OpenAPI 3.x, JSON or YAML, from a URL or local file
GET/POST/PUT/PATCH/DELETEPath, query, and header parameters; JSON request bodies
A single global auth header (API key or bearer token)
Roadmap
Per-operation filtering (
--only,--tag) to expose a subset of a large API$refresolution for fully-expanded body schemasSwagger 2.0 specs
SSE / HTTP transport in addition to stdio
PRs welcome.
License
MIT
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Amanbig/mcpify'
If you have feedback or need assistance with the MCP directory API, please join our Discord server