
OpenAPI Proxy
STDIOHTTP-SSETool converting OpenAPI services to MCP servers for AI agent integration
Tool converting OpenAPI services to MCP servers for AI agent integration
A command-line tool that transforms any OpenAPI service into a Model Context Protocol (MCP) server, enabling seamless integration with AI agents and tools that support the MCP specification.
[!NOTE] This tool is still in early development stage. Roadmap is here
Model Context Protocol (MCP) is a standardized protocol for AI agents to interact with external tools and services. It provides a consistent way for AI models to discover, understand, and utilize various capabilities through a unified interface, making it easier to build AI-powered applications that can interact with multiple services.
OpenAPI (formerly known as Swagger) is a specification for machine-readable interface files for describing, producing, consuming, and visualizing RESTful web services. It allows both humans and computers to discover and understand the capabilities of a service without needing to access the source code or additional documentation.
This middleware acts as a bridge between OpenAPI services and MCP clients. It:
This enables any existing REST API with an OpenAPI specification to be immediately accessible to AI agents that understand MCP, without requiring any modifications to the original service.
npm install -g openapi-mcp-proxy
npx openapi-mcp-proxy --spec ./path/to/openapi.yml --target http://your-api.com --port 3000
-s, --spec <path>
(required): Path to your OpenAPI specification file (env: OMP_OPENAPI_SPEC_FILE
)-t, --target <url>
(optional): Target URL of the API service (default: "http://localhost:8080", env:OMP_TARGET_BASE_URL
)-p, --port <number>
(optional): Port to run the MCP server on (default: "3000", env: PORT
)-V, --version
: Display version number-h, --help
: Display help for commandStart an MCP server for the Petstore API
npx openapi-mcp-proxy --spec resources/petstore.openapi.yml --target https://petstore.swagger.io/v2
To test your MCP server, you can use the Model Context Protocol:
npx @modelcontextprotocol/inspector
/mcp
like
http://localhost:3000/mcp
It's easier to use this with VS Code's built-in agent mode:
Cmd/Ctrl + Shift + P
Cmd/Ctrl + Shift + P
http://localhost:3000/mcp
ending with /mcp
for more information on how to use MCP servers with VS code, see this
Contributions are welcome! Please feel free to submit a Pull Request. Roadmap is here
MIT