MCP.so
Sign In

open-api-mcp

@nexpando-com

About open-api-mcp

Generate a MCP server based on OpenAPI specifications

Basic information

Category

Developer Tools

License

MIT

Runtime

node

Transports

stdio

Publisher

nexpando-com

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "open-api-mcp": {
      "command": "bun",
      "args": [
        "dev"
      ]
    }
  }
}

Tools

No tools detected

We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.

Overview

What is open-api-mcp?

open-api-mcp is a command-line tool that generates an MCP (Model Context Protocol) server from OpenAPI specifications. It simplifies creating API clients by leveraging OpenAPI schemas and generating strongly-typed clients using Zod.

How to use open-api-mcp?

Clone the repository, install dependencies with bun install, prepare an OpenAPI specification (JSON or YAML), copy .env.template to .env, then start the server with bun dev or ./cli.sh open-api.json. For Docker, add the spec to a specs directory and run docker-compose up with appropriate environment variables.

Key features of open-api-mcp

  • Generate MCP servers from OpenAPI specifications
  • Automatically create Zod-based API clients for type-safe interactions
  • Supports both JSON and YAML OpenAPI specification formats
  • Easily configurable via environment variables or Docker Compose

Use cases of open-api-mcp

  • Quickly create an MCP server for any REST API with an OpenAPI spec
  • Generate type-safe API clients for integration in AI applications
  • Deploy API gateway MCP servers in containerized environments

FAQ from open-api-mcp

How do I customize authentication?

Override the get-axios.ts file with your own authentication logic. By default, it uses a Bearer token from the API_KEY environment variable. With Docker, mount a custom version of get-axios.ts as a volume.

What transport types are supported?

Supported transport types are httpStream, sse, and stdio, configurable via the MCP_TRANSPORT_TYPE environment variable.

How do I run open-api-mcp with Docker?

Create a specs directory with your OpenAPI file, define a docker-compose.yml with the nexpando/open-api-mcp image, mount the specs directory, and set environment variables (OPEN_API_FILE, API_URL, optionally API_KEY, MCP_NAME, MCP_VERSION, MCP_TRANSPORT_TYPE). Then run docker-compose up.

What are the runtime dependencies?

The project uses the Bun runtime (install with bun install). A Docker image is also available for containerized deployment.

Where should I place the OpenAPI specification file?

Place it in the specs directory (e.g., specs/open-api.json or specs/open-api.yml) and set the OPEN_API_FILE environment variable to point to it.

Comments

More Developer Tools MCP servers