OpenAPI Model Context Protocol
STDIOMCP server that provides configured REST APIs as context to LLMs.
MCP server that provides configured REST APIs as context to LLMs.
MCP - Model Context Protocol Server
, that provides configured REST API's as context to LLM's.GET/PUT/POST/PATCH
.pip install openapi_mcp_server
OPENAPI_SPEC_PATH
& API_BASE_URL
. Sample file available hereopenapi_mcp_server
server using uv run openapi_mcp_server
from the above folder.{ "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" } } } }
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)Contributions are welcome.
Please feel free to submit a Pull Request.
This project is licensed under the terms of the MIT license.
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/*