rahgadda
/
openapi_mcp_server
star
5
OpenAPI MCP Server

OpenAPI MCP Server

smithery badge

Overview

  • This project will install MCP - Model Context Protocol Server, that provides configured REST API's as context to LLM's.
  • Using this we can enable LLMs to interact with RestAPI's and perform REST API call's using LLM prompts.
  • Currently we support HTTP API Call's GET/PUT/POST/PATCH.

Installation

  • Install package
    pip install openapi_mcp_server
    
  • Create .env in a folder with minimum values for OPENAPI_SPEC_PATH & API_BASE_URL. Sample file available here
  • Test openapi_mcp_server server using uv run openapi_mcp_server from the above folder.

Claud Desktop

  • Configuration details for Claud Desktop
    {
      "mcpServers": {
        "openapi_mcp_server":{
          "command": "uv",
          "args": ["run","openapi_mcp_server"]
          "env": {
              "DEBUG":"1",
              "API_BASE_URL":"https://petstore.swagger.io/v2",
              "OPENAPI_SPEC_PATH":"https://petstore.swagger.io/v2/swagger.json",
              "API_HEADERS":"Accept:application/json",
              "API_WHITE_LIST":"addPet,updatePet,findPetsByStatus"
          }
        }
      }
    }
    
    Pet Store Demo

Configuration

  • List of available environment variables
    • DEBUG: Enable debug logging (optional default is False)
    • OPENAPI_SPEC_PATH: Path to the OpenAPI document. (required)
    • API_BASE_URL: Base URL for the API requests. (required)
    • API_HEADERS: Headers to include in the API requests (optional)
    • API_WHITE_LIST: White Listed operationId in list format ["operationId1", "operationId2"] (optional)
    • API_BLACK_LIST: Black Listed operationId in list format ["operationId3", "operationId4"] (optional)
    • HTTP_PROXY: HTTP Proxy details (optional)
    • HTTPS_PROXY: HTTPS Proxy details (optional)
    • NO_PROXY: No Proxy details (optional)

Contributing

Contributions are welcome.
Please feel free to submit a Pull Request.

License

This project is licensed under the terms of the MIT license.

Github Stars

Star History Chart

Appendix

UV

mkdir -m777 openapi_mcp_server
cd openapi_mcp_server
uv init
uv add mcp[cli] pydantic python-dotenv requests
uv add --dev twine setuptools
uv sync
uv run openapi_mcp_server
uv build
pip install --force-reinstall --no-deps .\dist\openapi_mcp_server-*fileversion*.whl
export TWINE_USERNAME="rahgadda"
export TWINE_USERNAME="<<API Key>>"
uv run twine upload --verbose dist/*

Reference

Stars
5
Mar 13Mar 18Mar 24Mar 30Apr 05Apr 11
Configuration
mcpradar.com © 2024 - 2025.
Made by @bytesbay