OpenAPI MCP サーバーのバンドル解除
このプロジェクトは、Model Context Protocol(MCP)サーバーに、OpenAPI仕様ファイルを複数のファイルに分割したり、特定のエンドポイントを新しいファイルに抽出したりするためのツールを提供します。これにより、MCPクライアント(AIアシスタントなど)がOpenAPI仕様をプログラム的に操作できるようになります。
前提条件
- Node.js (LTS バージョンを推奨、例: v18 または v20)
- npm (Node.js に付属)
使用法
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Unbundle OpenAPI MCP Server を自動的にインストールするには:
このサーバーを使用する最も簡単な方法はnpx
を使用することです。これにより、グローバル インストールを必要とせずに常に最新バージョンを使用できます。
あるいは、グローバルにインストールすることもできます (通常は推奨されません)。
サーバーが起動し、標準入出力 (stdio) で MCP 要求をリッスンします。
クライアント構成
このサーバーをVS Code、Cline、Cursor、Claude DesktopなどのMCPクライアントで使用するには、それぞれの設定ファイルに構成を追加してください。推奨される方法はnpx
を使用することです。
VS Code / クライン / カーソル
次のコードをユーザーsettings.json
json ( Ctrl+Shift+P
> Preferences: Open User Settings (JSON)
アクセス可能) またはワークスペース ルートの.vscode/mcp.json
ファイルに追加します。
クロードデスクトップ
claude_desktop_config.json
ファイルに次の内容を追加します。
構成を追加した後、変更を有効にするためにクライアント アプリケーションを再起動します。
提供されるMCPツール
split_openapi
説明: redocly split
コマンドを実行し、OpenAPI 定義ファイルをその構造に基づいて複数の小さなファイルに分割します。
引数:
apiPath
(文字列、必須): 入力 OpenAPI 定義ファイルへの絶対パス (例:openapi.yaml
)。outputDir
(文字列、必須): 分割出力ファイルを保存するディレクトリへの絶対パス。このディレクトリが存在しない場合は作成されます。
戻り値:
- 成功した場合:
redocly split
コマンドからの標準出力を含むテキスト メッセージ (通常は確認メッセージ)。 - 失敗した場合: コマンド実行からの標準エラーまたは例外の詳細を含むエラー メッセージ。isError
isError: true
でマークされます。
使用例(概念的なMCPリクエスト):
extract_openapi_endpoints
**説明:**大規模なOpenAPI定義ファイルから特定のエンドポイントを抽出し、それらのエンドポイントと参照コンポーネントのみを含む、新しい小さなOpenAPIファイルを作成します。これは、元のファイルを分割し、指定されたパスのみを保持するように構造を変更し、結果をバンドルすることで実現されます。
引数:
inputApiPath
(文字列、必須): 大規模な入力 OpenAPI 定義ファイルへの絶対パス。endpointsToKeep
(文字列の配列、必須):最終出力に含めるエンドポイントパス(文字列)のリスト(例:["/api", "/api/projects/{id}{.format}"]
)。元の仕様に見つからないパスは無視されます。outputApiPath
(文字列、必須): 最終的な、より小さなバンドルされたOpenAPIファイルを保存する絶対パス。ディレクトリが存在しない場合は作成されます。
戻り値:
- 成功した場合: 作成されたファイルのパスと
redocly bundle
コマンドからの標準出力を示すテキスト メッセージ。 - 失敗時: 失敗したステップ (分割、変更、バンドル) の詳細を含むエラー メッセージ。isError
isError: true
でマークされます。
使用例(概念的なMCPリクエスト):
**注:**このサーバーは、内部的にnpx @redocly/cli@latest
を使用して、基盤となるsplit
とbundle
コマンドを実行します。キャッシュされていない場合、 npx
@redocly/cli
extract_openapi_endpoints
取得するにはインターネット接続が必要になる場合があります。extract_openapi_endpoints プロセス中に一時ファイルが作成され、自動的にクリーンアップされます。
発達
ソースから貢献したりサーバーを実行したりしたい場合は、次の手順に従ってください。
- **クローン:**このリポジトリをクローンします。
- ナビゲート:
cd unbundle_openapi_mcp
- 依存関係のインストール:
npm install
- ビルド:
npm run build
(TypeScript をdist/
にコンパイルします) - 実行:
npm start
(dist/
内のコンパイルされたコードを使用してサーバーを起動します)
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
OpenAPI 仕様のアンバンドル MCP
Related MCP Servers
- -securityFlicense-qualityA MCP server that exposes OpenAPI schema information to LLMs like Claude. This server allows an LLM to explore and understand large OpenAPI schemas through a set of specialized tools, without needing to load the whole schema into the contextLast updated -375JavaScript
- -securityFlicense-qualityAn MCP server that provides access to Naver OpenAPI services, enabling users to search blogs, news, books, images, and other content through standardized Model Context Protocol interfaces.Last updated -Python
- -securityAlicense-qualityGenerate an MCP server for any OpenAPI documented endpoint.Last updated -266GoApache 2.0
- -securityAlicense-qualityMCP server providing token-efficient access to OpenAPI/Swagger specs via MCP Resources for client-side exploration.Last updated -35122TypeScriptMIT License