Custom CatalogsとProfilesとは
Dockerが、MCP(Model Context Protocol)サーバーの管理・配布を組織レベルで行うためのCustom Catalogsと、開発者個人がワークフロー別にMCPサーバーをグルーピングできるProfilesのGA(一般提供)を発表した。
MCPの普及が進むなかで、チームが直面する課題は「ツールへのアクセス」ではなく「ツールの統制」にある。Custom CatalogsとProfilesは、組織が推奨するものと個人の作業方法を分離し、MCPをスケーラブルに運用するための仕組みとして設計されている。
Custom Catalogs
組織が承認済みMCPサーバーのコレクションをキュレーションし、OCIアーティファクトとして配布する仕組み。Docker MCP Catalog、コミュニティソース、社内開発サーバーを1つに統合できる。
Profiles
MCPサーバーの名前付きグルーピング。用途別(coding / planning等)にサーバー構成を切り替え、設定の永続化やツール単位の有効/無効制御が可能。
カスタムカタログの作成手順
カスタムカタログは、Docker MCP Catalogの公開サーバーと自作サーバーを組み合わせて作成する。作成したカタログはOCIアーティファクトとしてレジストリにpushし、チーム全体で共有できる。
ワークフロー
カスタムMCPサーバーの準備
MCPサーバーをDockerイメージとしてビルドし、Docker Hubにpush。メタデータをYAMLファイルで定義する。
カタログの作成
docker mcp catalog create で、catalog://(公開カタログ)とfile://(ローカルYAML)を組み合わせてカタログを定義。
確認と共有
docker mcp catalog show で内容を検証し、docker mcp catalog push でOCIレジストリに公開。
チームへの配布
Docker Desktopの「Import catalog」またはCLIのdocker mcp catalog pullでカタログを取り込む。
カタログ作成コマンドの例
プライベートカタログ: Docker Hubのリポジトリアクセス管理をそのまま利用できるため、カタログ専用の新しいインフラを構築する必要はない。
Profilesの活用パターン
Profilesは、MCPサーバーのグルーピングにとどまらず、設定の永続化、ツール単位の制御、チーム間共有まで対応する。以下は代表的な活用パターン。
ワークフローの切り替え
用途別にProfileを作成し、エージェントクライアントを再割り当てするだけで、利用するMCPツールセットを丸ごと切り替えられる。
| Profile | MCPサーバー | 用途 |
|---|---|---|
| coding | Playwright, GitHub, Context7 | コーディング作業 |
| planning | Atlassian, Markitdown, Notion | 企画・計画作業 |
クライアント(Claude Code等)はどちらのProfileにも接続可能で、切り替えは再割り当てだけで完了する。特定のエージェントに限定されないポータブルな設計になっている。
設定の永続化
MCPサーバーの設定オプション(アクセスパス、認証情報など)をProfile内に保存できる。一度設定すれば、再利用のたびに再設定する必要がない。
コンテキストウィンドウの最適化
MCPサーバーが多数のツールをエクスポートすると、コンテキストウィンドウが圧迫される。Profileでは、サーバー内の個別ツールの有効/無効を切り替えられるため、必要なツールだけをエージェントセッションに露出できる。
コンテキストの節約: 例えばGitHub MCPサーバーのget_meツールだけを有効化し、他の全ツールを無効化することで、コンテキストウィンドウへの影響を最小限に抑えられる。
Profileの共有
カスタムカタログと同様に、ProfileもOCIアーティファクトとしてコンテナレジストリにpush/pullで共有できる。
組織への導入を見据えた設計
Custom CatalogsとProfilesの組み合わせは、MCPの組織的な採用において「何を推奨するか(カタログ)」と「どう使うか(プロファイル)」を分離する設計になっている。
プラットフォームチームはカタログで標準を定義し、開発者はProfileで自分の作業に最適な構成を組み立てる。この分離により、ガバナンスと柔軟性の両立が可能になる。
今後のロードマップ
| 予定項目 | 内容 |
|---|---|
| ガバナンスポリシー | 承認済みカタログと信頼されたサーバーソースへの使用制限 |
| Profile単位のシークレット | プロジェクトレベルのmcp.jsonに代わるセキュアな設定管理 |
| エージェントスキルとの連携 | スキルがProfileを依存関係として参照し、必要なMCPサーバーを自動取得 |
| 検索性の向上 | カタログとProfile双方の発見性・共有性の改善 |
DockerのCustom CatalogsとProfilesは、MCPサーバーの管理を「組織の標準化」と「個人のワークフロー最適化」の2層に分離する仕組みとして提供された。OCIアーティファクトによる配布、ツール単位のコンテキスト制御、クライアント非依存のポータブル設計が特徴。Docker Desktop 4.63以降で利用可能。