Mcp Server Scraper について
LiteLLM向けに、公式MCPサーバーディレクトリから設定を取得するTypeScriptスクリプトです。Docker設定を優先し、npxとuvxの設定にも対応します。
主な機能
- 01MCPサーバー設定の取得
- 02Docker設定の優先選択
- 03npxとuvx設定への対応
- 04TypeScriptスクリプトのビルドと実行
活用シーン
- 01LiteLLM用サーバー設定の収集
- 02ディレクトリページからの設定抽出
MCP 対応
MCPサーバーディレクトリから設定を取得するスクリプトであり、MCPクライアント向けにツールやリソースを公開するサーバーではありません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
目的
このスクリプトは、LiteLLM 向けに、「https://github.com/modelcontextprotocol/servers/tree/main/src」にある MCP サーバーの設定をスクレイピングするために作成されました。
実装とその理由
メインの自己実行関数が GitHub ページに移動し、オブジェクトを組み立てます。
スクレイピングのロジックの大部分は「scrapeServerConfiguration」にあります。MCP サーバーの設定は、一部のページ(サーバーディレクトリ)で公開されている JSON 形式であり、ユーザーはこれをブラウザーのクリップボードにコピーできます。ほかのページでは、設定が「Using docker」のようなドロップダウンの中に隠れています。このスクレイパーは、まず Docker の設定を探し、次に npx の設定、優先設定が存在しない場合は uvx の設定を探します。理由は不明ですが、Playwright のセレクターは npx の設定を優先し続けます(コードのロジックに問題がある可能性もあります)。そのため、Docker の設定が存在する場合に取得するための別の「for loop」を作成しました(詳しい説明については作成者にお問い合わせください)。
デバッグ用にコンソールログを追加しました。必要に応じて、コンソールログやコメントを削除してください。
使い方
- TypeScript をコンパイルする:npm run build
- スクリプトを実行する:npm start
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。