OPENAPI Specifications => MCP (Model Context Protocol) Tools について
OpenAPI Specifications => MCP Tools は、OpenAPI 仕様を MCP ツールに変換するユーティリティライブラリです。既存の OpenAPI 定義から MCP サーバーを効率よく開発したい開発者向けです。
主な機能
- 01OpenAPI 仕様から MCP ツールへの変換
- 02MCP TypeScript SDK のサーバーとの連携
- 03HTTP クライアントの設定カスタマイズ
活用シーン
- 01既存の OpenAPI 仕様からの MCP サーバー構築
- 02REST API エンドポイント向けの MCP ツール定義の生成
MCP 対応
本ライブラリは MCP サーバーの開発に使用され、変換された OpenAPI の操作を MCP ツールとして MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
インストール方法は未掲載です
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
OPENAPI 仕様 => MCP(Model Context Protocol)ツール
- 🔧 OpenAPI 仕様を MCP ツールに変換するユーティリティライブラリです。
- 🚀 OPENAPI 仕様に基づく MCP サーバーの開発を高速化します。
使い方
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import {
CallToolRequestSchema,
ListToolsRequestSchema,
} from '@modelcontextprotocol/sdk/types.js';
import { Converter } from 'openapi2mcptools';
const converter = new Converter({
baseURL, // optional
httpClient // optional
});
await converter.load({
// specs
});
const tools = converter.getToolsList();
const toolCaller = converter.getToolsCaller();
const server = new Server(
{
name: 'mcp-server-openapi',
version: '1.0.0',
},
{
capabilities: {
tools: {},
},
},
);
// Define available tools
server.setRequestHandler(ListToolsRequestSchema, async () => {
return {
tools,
};
});
// Handle tool execution
server.setRequestHandler(CallToolRequestSchema, async (request) => {
return await toolCaller(request);
});
const transport = new StdioServerTransport();
await server.connect(transport);
カスタムクライアント
HTTP クライアントの baseURL、headers などを設定します。
export type RequestConfig = {
url?: string;
method?: string;
headers?: any;
params?: any;
data?: any;
}
export interface HTTPClient {
request: (requestConfig: RequestConfig) => Promise<{ data: any }>;
}
例:
import axios from axios;
import { Converter } from 'openapi2mcptools';
const converter = new Converter({
httpClient: axios
});
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。