JUHE API Marketplace
electrocucaracha avatar
MCP Server

MCP OpenAPI Proxy

A tool that accelerates MCP protocol adoption by automatically generating MCP-compatible server components from OpenAPI specifications, enabling seamless integration with existing services as a sidecar.

4
GitHub Stars
8/23/2025
Last Updated
No Configuration
Please check the documentation below.

README Documentation

MCP OpenAPI

GitHub Super-Linter

visitors Scc Code Badge Scc COCOMO Badge

This project aims to accelerate the adoption of the MCP protocol by simplifying server generation through automated tooling. It parses an OpenAPI specification and dynamically generates the corresponding MCP server components.

Key Features

  • Parses OpenAPI specifications
  • Dynamically generates MCP-compatible server code and tools
  • Designed to streamline integration and deployment

Use Cases

One common use case is deploying this application as a sidecar alongside existing services. This enables seamless MCP support without requiring manual server implementation.

Why MCP OpenAPI Proxy?

By automating the translation from OpenAPI to MCP, this tool reduces the overhead of manual server development and promotes faster adoption of the MCP protocol within modern service architectures.

Workflow

sequenceDiagram
    actor user as User
    actor agent as Agent
    participant ingress as Ingress
    participant mcp_proxy as MCP Proxy
    participant openapi_server as OpenAPI Server
    participant db as Database

    user->>ingress: Request for OpenAPI resource
    ingress->>openapi_server: Forward request
    openapi_server->>db: Query database
    db-->>openapi_server: Database response
    openapi_server-->> user: OpenAPI Server response

    Note over user,db: LLM interaction

    user->>agent: Send a prompt
    agent->>ingress: Request for MCP tool
    ingress->>mcp_proxy: Forward request
    mcp_proxy->>openapi_server: Forward request
    openapi_server->>db: Query database
    db-->>openapi_server: Database response
    openapi_server-->>mcp_proxy: OpenAPI Server response
    mcp_proxy-->>agent: MCP server response
    agent-->>user: Prompt response

Environment variables

NameDefaultDescription
OPENAPI_SPEC_URLURL of the Open API specification.
TRANSPORTstreamable-httpTransport type to use for communication with the MCP server.
HOST127.0.0.1Hostname or IP address to bind the server to.
PORT8000Port number to listen on.

Validation

A helper script is provided to validate the MCP server. It uses the MCP Python SDK to connect, list tools, and execute them.

List available tools

./tests/client.py -m http://localhost:8000/mcp

Example output:

{
  "properties": {
    "url": {
      "title": "Url",
      "type": "string"
    }
  },
  "required": ["url"],
  "title": "fetch_websiteArguments",
  "type": "object"
}

Call a tool

./tests/client.py -m http://localhost:8000/mcp -a call-tool -t fetch -i url=https://electrocucaracha.com/acerca/

Example output (truncated):

<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="UTF-8" />
    ...
  </head>
</html>

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source