OpenAPI MCP Server について
OpenAPI MCP Serverは、OpenAPIドキュメントとベースURLで設定したREST APIをLLMから利用できるようにします。GET、PUT、POST、PATCHに対応し、リクエストヘッダーや操作の許可リスト・拒否リストも設定できます。
主な機能
- 01OpenAPIに基づくREST APIアクセス
- 02GET、PUT、POST、PATCH呼び出し
- 03リクエストヘッダーの任意設定
- 04操作の許可リストと拒否リスト
活用シーン
- 01LLMから設定済みREST APIを呼び出す
- 02利用可能なAPI操作を制限する
- 03プロキシ設定を介してリクエストする
MCP 対応
OpenAPIドキュメントとAPIベースURLに基づき、設定済みのREST API操作をMCPクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
インストール方法は未掲載です
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
OpenAPI MCP サーバー
概要
- このプロジェクトでは、設定済みの REST API を LLM のコンテキストとして提供する
MCP - Model Context Protocol Serverをインストールします。 - これを使用することで、LLM が REST API と対話し、LLM のプロンプトを使用して REST API を呼び出せるようになります。
- 現在、HTTP API 呼び出し
GET/PUT/POST/PATCHに対応しています。
インストール
- パッケージをインストールします
pip install openapi_mcp_server .envをフォルダー内に作成し、OPENAPI_SPEC_PATHとAPI_BASE_URLに最低限の値を設定します。サンプルファイルはこちらから入手できます。- 上記のフォルダーから
uv run openapi_mcp_serverを実行し、openapi_mcp_serverサーバーをテストします。
Claud Desktop
- 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" } } } }
設定
- 使用可能な環境変数の一覧
DEBUG:デバッグログを有効にします(省略可能。デフォルトは False)OPENAPI_SPEC_PATH:OpenAPI ドキュメントへのパスです(必須)API_BASE_URL:API リクエストのベース URL です(必須)API_HEADERS:API リクエストに含めるヘッダーです(省略可能)API_WHITE_LIST:リスト形式の許可対象 operationId(["operationId1", "operationId2"])(省略可能)API_BLACK_LIST:リスト形式の禁止対象 operationId(["operationId3", "operationId4"])(省略可能)HTTP_PROXY:HTTP プロキシの詳細(省略可能)HTTPS_PROXY:HTTPS プロキシの詳細(省略可能)NO_PROXY:プロキシを使用しない設定の詳細(省略可能)
貢献
貢献を歓迎します。
お気軽にプルリクエストをお送りください。
ライセンス
このプロジェクトは MIT ライセンスの条件に基づいてライセンスされています。
GitHub スター数
付録
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/*
参考資料
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。