mcpField
🤖
🤖 OpenAPI MCP Server

🤖 OpenAPI MCP Server

ローカル
npmjs.com開発ツール778 週間前に更新

🤖 OpenAPI MCP Server について

OpenAPI MCP Serverは、OpenAPI仕様からMCPサーバーを生成し、対応するREST APIへリクエストを中継するコマンドラインツールです。既存のOpenAPIサービスをMCPクライアントから利用可能にしたい開発者向けで、現在は初期開発段階です。

主な機能

  1. 01OpenAPI仕様からのMCPサーバー生成
  2. 02REST APIへのリクエスト中継
  3. 03MCPとRESTの形式変換
  4. 04仕様ファイル、接続先、ポートの設定

活用シーン

  1. 01既存のOpenAPIサービスのMCPクライアント公開
  2. 02MCPクライアント経由でのREST API呼び出し
  3. 03指定したAPI用のMCPサーバー起動

MCP 対応

OpenAPI仕様からMCPサーバーを生成し、MCPクライアントからのリクエストを接続先のREST APIへ転送します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"openapi-mcp-proxy": {
"command": "npx",
"args": [
"-y",
"openapi-mcp-proxy"
]
}
}
}
起動コマンドnpx -y openapi-mcp-proxy

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmopenapi-mcp-proxy

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

🤖 OpenAPI MCP サーバー

asciicast

あらゆる OpenAPI サービスを Model Context Protocol(MCP)サーバーに変換するコマンドラインツールです。MCP 仕様に対応した AI エージェントやツールとシームレスに連携できます。

メモ

このツールは現在、開発の初期段階です。 ロードマップはこちらです。

Model Context Protocol(MCP)とは?

Model Context Protocol(MCP)は、AI エージェントが外部のツールやサービスを利用するための標準化されたプロトコルです。統一されたインターフェースを通じて、AI モデルがさまざまな機能を見つけ、理解し、利用するための一貫した方法を提供します。これにより、複数のサービスと連携する AI 搭載アプリケーションを簡単に構築できます。

OpenAPI とは?

OpenAPI(旧称 Swagger)は、RESTful Web サービスを記述、生成、利用、可視化するための、機械可読なインターフェースファイルの仕様です。ソースコードや追加のドキュメントにアクセスしなくても、人間とコンピューターの両方がサービスの機能を見つけ、理解できるようにします。

このプロジェクトについて

このミドルウェアは、OpenAPI サービスと MCP クライアントの間をつなぎます。次のことを行います。

  1. OpenAPI 仕様ファイルを入力として受け取ります
  2. MCP に準拠したサーバーを自動生成します
  3. 受信したリクエストを実際の OpenAPI サービスにプロキシします
  4. MCP と REST の規約を相互に変換します

これにより、OpenAPI 仕様を持つ既存の REST API を、元のサービスに変更を加えることなく、MCP を理解する AI エージェントからすぐに利用できるようになります。

インストール

npm install -g openapi-mcp-proxy

使い方

npx openapi-mcp-proxy --spec ./path/to/openapi.yml --target http://your-api.com --port 3000
オプション
  • -s, --spec <path>(必須):OpenAPI 仕様ファイルへのパス(環境変数:OMP_OPENAPI_SPEC_FILE)
  • -t, --target <url>(任意):API サービスのターゲット URL(デフォルト:"http://localhost:8080"、環境変数:`OMP_TARGET_BASE_URL`)
  • -p, --port <number>(任意):MCP サーバーを実行するポート(デフォルト:"3000"、環境変数:PORT)
  • -V, --version:バージョン番号を表示します
  • -h, --help:コマンドのヘルプを表示します
例

Petstore API 用の MCP サーバーを起動します

npx openapi-mcp-proxy --spec resources/petstore.openapi.yml --target https://petstore.swagger.io/v2
テスト
MCP Inspector

MCP サーバーをテストするには、Model Context Protocol を使用できます。

  1. MCP Inspector をインストールします。
npx @modelcontextprotocol/inspector
  1. MCP サーバーを起動します
  2. Inspector の UI に移動し、/mcp で終わる正しいサーバーパスを入力します。例: http://localhost:3000/mcp
  3. これで MCP サーバーを操作できます。MCP Inspector には、リクエストとレスポンスの詳細情報が表示されます。
VS Code を使う場合

VS Code に組み込まれたエージェントモードを使うと、より簡単に利用できます。

  1. VS Code を開き、エージェントモードを有効にします。
    • Cmd/Ctrl + Shift + P を押します
    • 「Toggle GitHub Copilot Agent Mode」と入力します
    • 「Enable」を選択します
  2. MCP サーバーを追加します。
    • Cmd/Ctrl + Shift + P を押します
    • 「MCP: add Server」と入力します
    • http://localhost:3000/mcp のように、/mcp で終わるMCP サーバーの URL を入力します
  3. GitHub Copilot Chat に新しいツールが認識されます。
  4. VS Code のエージェントインターフェースから MCP サーバーを操作できます。「現在利用可能なペットは何匹ですか?」と尋ねてみてください。

VS Code で MCP サーバーを使用する方法について詳しくは、こちらをご覧ください。

コントリビューション

コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。 ロードマップはこちらです。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。