mcp-server-operator について
MCP Server Operatorは、OpenShiftおよび互換性のあるKubernetesクラスター上でMCPサーバーのライフサイクルを管理します。`MCPServer`カスタムリソースでコンテナイメージや任意の起動コマンド・引数を指定できます。
主な機能
- 01`MCPServer`リソースによるデプロイ管理
- 02コンテナイメージの設定
- 03起動コマンドと引数の指定
- 04OpenShift互換クラスターでの実行
活用シーン
- 01OpenShiftクラスターへのMCPサーバーのデプロイ
- 02サーバーイメージと起動引数の指定
- 03Kubernetesリソースによるサーバーインスタンス管理
MCP 対応
クラスター内のMCPサーバーインスタンスを管理します。各サーバーがクライアントに公開するツールやリソースについては記載されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバーオペレーター
MCP サーバーオペレーターは、OpenShift クラスター上の MCP(Model Context Protocol)サーバーのライフサイクルを管理します。カスタムリソース定義(CRD)MCPServerを活用して、ユーザーはカスタム MCP サーバーのデプロイ時に、MCP サーバーのイメージと実行時引数を指定できます。
機能
- CRD を介して MCP サーバーインスタンスをデプロイ、管理します
- カスタムコンテナーイメージと実行時引数に対応しています
- Openshift クラスターと互換性があります
- エンドツーエンドテストと単体テストの両方が含まれています。
目次
使い方
前提条件
インストールする前に、オペレーターを実行するために以下が必要です。
- OpenShift クラスター(ROSA、OSD、CRC)、または互換性のある Kubernetes クラスター
- コンテナーエンジン(
podmanまたはdocker) - OpenShift CLI ツール:
oc - CRD のインストールとオペレーターのデプロイに必要な権限
インストール
以下の手順を始める前に、クラスターを使用する場合はクラスターにログインしていることを確認してください。
oc login --token=<your user token> --server=<your openshift cluster server>
クラスターにログインしたら、リポジトリーをクローンしてから、mcp-server-operator フォルダーに移動します。
git clone https://github.com/opendatahub-io/mcp-server-operator.git
cd mcp-server-operator
次に、環境変数を設定します。
export IMG=<your-registry>/<username>/mcp-server-operator:<tag>
その後、イメージをビルドします。
CONTAINER_TOOL={docker|podman} IMG=$IMG make build
続いて、必要な CRD をインストールします。
make install
オペレーターをローカルで実行する
make run
クラスター上でオペレーターを実行する
make deploy IMG=$IMG
MCP サーバーインスタンスの作成
以下は MCPServer の作成例です。コマンドを実行する前に、角括弧内のテキストを適切な情報に置き換えてください。
cat << EOF | oc create -f -
apiVersion: mcpserver.opendatahub.io/v1
kind: MCPServer
metadata:
name: <your_name_here>
namespace: mcp-server-operator-system
spec:
image: <your_image_here>
args:
- <arg 1>
- <arg 2>
command:
- <command 1>
- <command 2>
EOF
フィールドの説明
image:MCP サーバーのコンテナーイメージです。args:(任意)MCP サーバーコンテナーに渡す実行時引数のリストです。command:(任意)MCP サーバーコンテナーに渡すエントリーポイントコマンドのリストです。
オペレーターのアンインストールとクラスターのクリーンアップ
まず、次のコマンドを使用してクラスターから MCPServer オブジェクトを削除します。
oc delete mcpserver -n mcp-server-operator-system [name]
次に、以下のコマンドを実行するだけでオペレーターをアンインストールできます。
make undeploy
開発者ガイド
前提条件
Go 1.23Kubebuilder
テストの実行
単体テストを実行するには、次のコマンドを実行します。
make test
エンドツーエンドテストを実行するには、次のコマンドを実行します。
make test-e2e
コントリビューション
コントリビューションを歓迎します!コントリビューションガイドラインをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。