OpenAPI MCP Server

by rahgadda

6 stars
179 downloads
Not rated
GitHub

About

OpenAPI MCP Server is a Model Context Protocol server that exposes configured REST APIs as context tools for large language models (LLMs). It enables LLMs to interact with REST APIs via natural language prompts, supporting GET, PUT, POST, and PATCH methods.

Details

Author
rahgadda
GitHub stars
6
Downloads
179
Categories
Other

- Integrates REST APIs as context for LLMs.
- Supports GET, PUT, POST, and PATCH HTTP methods.
- Configured via environment variables (OPENAPI_SPEC_PATH, API_BASE_URL).
- Optional API headers, operation ID whitelist/blacklist.
- Optional HTTP/HTTPS proxy support.
- Debug logging available (DEBUG environment variable).

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name OpenAPI MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install the package with pip install openapi_mcp_server, then create a .env file with the mandatory OPENAPI_SPEC_PATH and API_BASE_URL variables. Test the server using uv run openapi_mcp_server. For Claude Desktop, add the server configuration to the mcpServers section in the Claude Desktop JSON config, specifying the command uv run openapi_mcp_server and any optional environment variables (e.g., API_HEADERS, API_WHITE_LIST).

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "openapi mcp server": {
            "openapi_mcp_server": {
                "command": "uv",
                "args": [
                    "init"
                ]
            }
        }
    }
}

McpServers

{
    "openapi_mcp_server": {
        "command": "uv",
        "args": [
            "init"
        ]
    }
}

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 ``bash 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
`json { "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

`bash 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

- UV Overview
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.