はじめに
openapi-mcp-serverは、OpenAPI v3.1に準拠したAPIをAIで利用可能なリソースに変換するために設計されたオープンソースのツールです。janwilmakeによって保守され、モデルコンテキストプロトコル(MCP)プロトコルに基づいて開発されています。このプロジェクトの中核的な機能は、APIプロキシとして機能することであり、開発者がAPIを使用できるようにすることです。 クロード Desktopなどのツールは、APIと直接対話する。このツールは、APIを素早く統合する必要のある開発者やAIエンジニアに特に適している。シンプルでわかりやすく設計されており、GitHubでオープンソース化されている。
機能一覧
- APIからMCPプロキシへOpenAPI で指定されたエンドポイントを Claude で使用可能なツールに変換します。
- 複数のフォーマットに対応APIは、OpenAI、Anthropic、または、MySQLに変換することができます。 エムシーピー ツール形式。
- コマンドライン操作プログラムによるAPIコールを容易にするCLIツールを提供。
- サンプルサーバーペットストアAPIのサンプルは、ユーザーがすぐに使い始められるように組み込まれています。
- オープンソースで無料コードは公開されており、ユーザーが自由に修正・拡張することができます。
ヘルプの使用
openapi-mcp-serverは複雑なインストールを必要とせず、GitHub経由でソースコードを入手して実行するだけでよい。詳しい手順は以下の通り。
インストールと操作
- 環境を整える
お使いのコンピューターにNode.jsとpnpmがインストールされていることを確認してください(推奨)。これはコマンドで確認できます:
node -v
pnpm -v
そうでない場合は https://nodejs.org
歌で応える https://pnpm.io
ダウンロードしてインストールする。
2. クローン倉庫
ターミナルを開き、こう入力する:
git clone https://github.com/janwilmake/openapi-mcp-server.git
cd openapi-mcp-server
- 依存関係のインストール
プロジェクト・ディレクトリで実行する:
pnpm install
- プロジェクトの構築
適切な動作を保証するためにコードを構築する:
pnpm build
- グローバルコマンドのリンク
コマンドラインツールを利用できるようにする:
npm link
クロードデスクトップの設定
- 設定ファイルの編集
クロードデスクトップ用の設定ファイルを探す:
- ウィンドウズ
%AppData%\Claude\claude_desktop_config.json
- マックだ。
~/Library/Application Support/Claude/claude_desktop_config.json
そうでない場合は、新しいファイルを作成する。
- MCPサーバーの追加
コンフィギュレーション・ファイルに以下を追加する:
{
"mcpServers": {
"petstore-api": {
"command": "npx",
"args": ["openapi-mcp-server", "/path/to/petstore-openapi.json"]
}
}
}
そうしれいかん /path/to/petstore-openapi.json
これをOpenAPIファイルのパスに置き換えてください。 examples/petstore-openapi.json
.
3. スタート・クロード・デスクトップ
クロードデスクトップを実行すると、自動的にこのサーバーがロードされます。
CLIでAPIを呼び出す
- OpenAPIファイルの準備
ターゲットAPIのOpenAPI v3.1 JSONファイルがあることを確認してください。petstore-openapi.json
. - コマンド実行
それをターミナルに入力する:
npx openapi-mcp-server /path/to/your-openapi.json
これでプロキシサーバーが起動する。
3. ペットショップのテスト例
このプロジェクトにはPetstore APIのサンプルが付属しています。それを実行してください:
npx openapi-mcp-server examples/petstore-openapi.json
その後、クロードデスクトップで、例えば「IDでペットを取得」と入力して、そのペットを操作する。
プログラマティック・コンバージョンAPI
- インポートモジュール
Node.jsプロジェクトにコードを追加する:
import { OpenAPIToMCPConverter } from 'openapi-mcp-server';
- 変換API
以下のコードを使用して、OpenAPIをツール・フォーマットに変換する:
const converter = new OpenAPIToMCPConverter(openApiSpec); // openApiSpec 是你的 JSON 数据
const openAiTools = await converter.convertToOpenAITools(); // 转为 OpenAI 格式
const mcpTools = converter.convertToMCPTools(); // 转为 MCP 格式
- APIの呼び出し
リクエストの実行にはHttpClientを使用する:
import { HttpClient } from 'openapi-mcp-server';
const httpClient = new HttpClient({ baseUrl: 'https://api.example.com' }, openApiSpec);
const response = await httpClient.executeOperation(mcpTools.openApiLookup['getPetById'], { petId: 123 });
作戦提案
- デバッグの問題もしクロードがクラッシュしたら、OpenAPIファイルが正常かどうかを
https://editor.swagger.io
検証。 - 更新コードコードを修正したら
pnpm build
をクリックし、クロードデスクトップを再起動します。 - 学習例を見る
examples/README.md
ペットストア・サーバーのCRUD操作を理解する。
アプリケーションシナリオ
- 迅速なAPI統合
ある開発者がプロジェクトにペット管理機能を追加したいと考えている。彼はopenapi-mcp-serverでPetstore APIをロードし、手作業でコードを書く時間を節約するためにClaudeで直接エンドポイントをテストした。 - AIによる開発支援
AIエンジニアはAPIコールコードを生成する必要がある。彼はツールを使ってOpenAPIファイルを変換し、クロードを使って完全なリクエストコードを生成する。 - ティーチング・デモンストレーション
教師はペットストアの例を使って、生徒にAPIをAIツールにプラグインする方法を示し、APIの相互作用について学ぶ。
品質保証
- 支払いは必要ですか?
その必要はない。このプロジェクトは完全にオープンソースで無料であり、GitHubでホストされている。 - どのようなAPIに対応していますか?
GitHubやCloudflareなど、OpenAPI v3.1仕様に含まれるAPIであれば何でも構いません。 - クロードが認めなかったら?
設定ファイルのパスと OpenAPI ファイルが正しいことを確認し、サーバーが起動していることを確認します。