mcpField
O
OPENAPI Specifications => MCP (Model Context Protocol) Tools

OPENAPI Specifications => MCP (Model Context Protocol) Tools

ローカル
github.com/2013xile開発ツール1998 週間前に更新

OPENAPI Specifications => MCP (Model Context Protocol) Tools について

OpenAPI Specifications => MCP Tools は、OpenAPI 仕様を MCP ツールに変換するユーティリティライブラリです。既存の OpenAPI 定義から MCP サーバーを効率よく開発したい開発者向けです。

主な機能

  1. 01OpenAPI 仕様から MCP ツールへの変換
  2. 02MCP TypeScript SDK のサーバーとの連携
  3. 03HTTP クライアントの設定カスタマイズ

活用シーン

  1. 01既存の OpenAPI 仕様からの MCP サーバー構築
  2. 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
});

コメント

MCP は初めてですか?

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

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