Any OpenAPI REST API,
now an MCP server.

Point mcpify at an OpenAPI 3.x spec and every endpoint becomes a fully typed MCP tool — parameter validation, error handling, and auth included. No boilerplate, no codegen, no maintenance.

mcpify demo: listing and serving OpenAPI endpoints as MCP tools

Built for the part nobody tells you about

Every "connect your API to Claude" tutorial ends at "now write a custom MCP server." That's the part mcpify deletes.

🔧 Zero boilerplate

Schemas, descriptions, and validation are generated from the spec at serve time. A 40-endpoint API takes seconds, not a day of wrapping.

🔐 Auth out of the box

--auth-env API_KEY --auth-style bearer injects credentials from the environment. Secrets never touch your config file or CLI history.

👀 Read-only mode

--read-only exposes only GET operations — let agents look without letting them touch. Safe by default.

🎯 Token-friendly scoping

--tag, --include, --exclude filters expose 5 relevant tools instead of 200. Your context window will notice.

🩺 Doctor

mcpify doctor inspects a spec before you serve it: missing operationIds, dead servers, agent-unfriendly summaries.

🧪 Proven

60 tests, typed end-to-end with mypy strict, CI on every push. It speaks standard MCP stdio — if your client speaks MCP, it works.

Three commands, start to finish

# 1. install
$ pipx install mcpify-openapi

# 2. preview what your agent will see
$ mcpify list ./openapi.json --read-only
mcpify: 8 tools from ./openapi.json
  findpetsbystatus   GET   /pet/findByStatus
  getpetbyid         GET   /pet/{petId}
  ...

# 3. serve — your API is now an MCP server
$ mcpify serve ./openapi.json --read-only \
    --auth-env API_TOKEN --auth-style bearer
✓ MCP server ready — 8 tools on stdio

Works with your client

Standard MCP over stdio. Point any MCP client at the mcpify serve command.

ClientConfig
Claude Desktop"command": "mcpify", "args": ["serve", "./openapi.json"]
Claude Codeclaude mcp add myapi -- mcpify serve ./openapi.json
CursorSame JSON as Claude Desktop, in .cursor/mcp.json
Anything MCPAny client that speaks MCP stdio