「Docker Desktop 4.43」公開 MCPカタログ刷新の理由となった、npx/uvxを介するMCPサーバ実行の課題とは

0

2025年07月24日 08:10  @IT

  • チェックする
  • つぶやく
  • 日記を書く

@IT

写真

 Dockerは2025年7月3日(米国時間)、「Docker Desktop」の最新版「Docker Desktop 4.43」の一般提供を開始した。


【その他の画像】


●「Docker Model Runner」の進化


 既存のワークフローから直接、AI(人工知能)モデルをローカルで実行、テストできる「Docker Model Runner」のUI(ユーザーインタフェース)が改善され、Docker Desktopで直接モデルカードを表示し、モデルを調査できるようになった。


 モデル管理コマンド(docker modelコマンド)には、開発者がモデルを効果的に調査、監視、管理するのに役立つ3つの新しいサブコマンドが追加された。


・「docker model ps」:現在メモリにロードされているモデルを表示する


・「docker model df」:モデルと推論エンジンのディスク使用量を確認する


・「docker model unload」:アイドルタイムアウト前にモデルをメモリから手動でアンロードする


 さらに、AIエージェントが回答を一度にまとめて返すのではなく、生成したテキストを少しずつリアルタイムで返す「{"stream": "true"}」をサポートするようになったことで、Docker Model Runner上に構築されたエージェントの動的応答性が高まった。APIのエンドポイントでの「OPTIONS」呼び出しもサポートし、既存のツールとの互換性も向上した。


 OpenAI APIとの互換性と、APIの構成可能性が向上した。


●MCP(Model Context Protocol)カタログとMCP Toolkit


MCPカタログの刷新


 「Docker MCPカタログ」(以下、MCPカタログ)が刷新され、ワークフローに適したMCPサーバの検索、検出、特定が容易になった。「Docker Hub」またはDocker Desktopの「MCP Toolkit」から直接アクセスできる他、専用のWebリンクからもアクセスできるようになった。


 MCPカタログには2025年6月現在、検証済みのコンテナ化ツールが100個以上含まれており、さらに数百個のツールが近く公開される見込みだ。


 MCPサーバは急速に採用が進んでいるが、Dockerは、「『npx』または『uvx』コマンドを介してMCPサーバを実行する現在の慣行は、依存関係管理の問題を引き起こすだけでなく、完全なホストアクセスが可能な未検証のコードにシステムをさらしてしまう」と認識しており、それらの方法よりもシンプルかつ安全にMCPサーバを実行する方法として、MCPカタログを提供している。


 カタログ内の全てのMCPサーバは分離されたDockerコンテナ内で実行されるので、Dockerは「未検証のコードを実行するリスクが排除され、プラットフォーム間で一貫性のある、再現可能な環境が確保できる」としている。


MCPサーバの提出方法


 MCPカタログへのMCPサーバ提出については2つの方法があり、開発者は「Docker-Built Server」(Dockerビルドサーバ)と「Community-Built Server」(コミュニティービルドサーバ)のどちらかを選べる。


Dockerビルドサーバ


 開発者がMCPサーバを、「Docker-Built Image」として「Docker MCP Registry」に登録すると、そのMCPサーバはMCPカタログのページで、「BUILT BY DOCKER」と表示される。これらのMCPサーバは、Dockerのセキュリティ対策が施されており、Dockerがビルドパイプライン全体を管理する。暗号化署名、ソフトウェア部品表(SBOM)、来歴証明、継続的な脆弱(ぜいじゃく)性スキャンなども同社が担当する。


コミュニティービルドサーバ


 開発者がMCPサーバを、「Self-Provided Pre-Built Image」として「Docker MCP Registry」に登録する場合は、MCPサーバは開発者によってDockerイメージとしてパッケージ化される。Dockerはビルドプロセスを管理しないが、コンテナによって分離されているため、開発者はセキュリティ上の恩恵が受けられる。


MCP Toolkitの強化


 MCPサーバの認証情報の多くは、環境変数としてプレーンテキストで渡されるため、漏えいのリスクが高い傾向がある。MCP Toolkitは、それらの認証情報をDocker Desktop上の安全なストレージ(暗号化された領域)に保存し、クライアントが認証情報をハードコーディングすることなく、MCPサーバやサードパーティーサービスで認証できるようにする。さらにMCP Toolkitは、安全な認証を開発ワークフローにさらに簡単に統合できるように、「GitHub」用のMCPサーバでOAuth(Open Authorization)認証に対応した。


 MCP Toolkitを使用すると、MCPサーバをさまざまなMCPクライアントに接続できる。「Claude」や「Cursor」などの一般的なクライアントであればワンクリックで接続可能だ。「docker mcp client connect vscode」コマンドを使用して、「Visual Studio Code」(以下、VS Code)にも手軽に接続できるようになった。


 ユーザー設定に特定の構成を追加することで、MCP ToolkitをVS Codeで利用できる“グローバルなMCPサーバ”として設定することも可能だ。


●Gordonがマルチスレッド会話に対応


 DockerのAIエージェントである「Gordon」が、マルチスレッドでの会話をサポートした。これによって複数の異なる会話(トピック)について同時並行でやりとりできるようになった。例えば、あるスレッドでコンテナの問題をデバッグし、別のスレッドで「Docker Compose」(複数のDockerコンテナを使用するアプリケーションを定義し、管理できるツール)のセットアップを改良するといったことを、会話のコンテキストを維持したままで切り替えられる。Gordonが各スレッドを整理するので、途中で中断したトピックからもすぐに再開できる。


 この新しいマルチスレッド機能は、MCPツールとも連携して動作し、タスクごとにトピックを整理しながら作業を進めることができる。また、Gordonのパフォーマンスが大幅に向上しており、Dockerによると「これまでより5倍速く応答し、より正確でコンテキストに応じた回答を提供するようになった」という。


●ローカルのComposeからKubernetesにシームレスに移行


 Docker Composeの新機能「Compose Bridge」がDocker Desktopに導入された。これによって、コンテナアプリケーションの構成管理ファイル「compose.yaml」を「Kubernetes」用に1つのコマンドで変換できる。


 これによって、従来は手間のかかっていたKubernetesへの移行や本番環境へのデプロイが、Compose Bridgeの活用によって大幅に効率化できる。Dockerは「Compose Bridgeは、ComposeアプリケーションをKubernetesに取り込むための効率的で柔軟な方法をユーザーに提供する」としている。



    ランキングIT・インターネット

    前日のランキングへ

    ニュース設定