MCPサービスを使用してエージェントをサードパーティ製ツールに接続します。
ベータ版
この機能はベータ版です。アカウント管理者は、アカウント コンソールの [プレビュー] ページからこの機能へのアクセスを制御できます。 Databricksのプレビューを管理するを参照してください。
MCP ServiceはUnity Catalogのセキュリティ保護可能なオブジェクトで、外部のMCPサーバーを登録し、エージェントがそれを使用する方法を管理します。3レベルの名前catalog.schema.mcp_serviceでアドレス指定し、AIトラフィックを管理するコントロールプレーンであるUnity AI Gatewayを介して呼び出します。
MCPサーバーをUnity Catalogのセキュリティ保護可能なオブジェクトとして登録することは、他のUnity Catalogリソースを保護するのと同じプリミティブで管理することを意味します。これには、誰が呼び出せるかを制御する権限、公開するツールを制限するツール選択、個々のツール呼び出しを許可または拒否するサービスポリシー、およびすべての呼び出しを追跡するための監査および使用状況Logが含まれます。
MCPサービスを使用するには、主に2つの方法があります。
アプローチ | 使用する場合 |
|---|---|
Slack、GitHub、Google Driveなど、一般的なSaaS (ソフトウェア・サービス) ツールをゼロセットアップで利用したい。ホストするサーバーも作成する接続もありません。 | |
Unity Catalogのセキュリティ保護可能なオブジェクトとして管理するセルフホスト型またはサードパーティ製MCPサーバーがあります。 |
MCPサービスはエージェントを外部サービスに接続します。DatabricksデータにはマネージドMCPサーバーを使用し;独自のツールをホストするにはカスタムMCPサーバーを使用します。
外部MCPサーバーを登録および呼び出す方法については、外部MCPサーバーを登録するを参照してください。そのツールと呼び出しを制限するには、MCPサービスを管理するを参照してください。
See it end to end
完全な例として、GitHub MCPサーバーを登録し、そのツールを制限し、サービスポリシーで破壊的な呼び出しをブロックし、使用状況を監査するには、チュートリアル:「コーディングエージェントのGitHub MCPアクセスを統制する」に従ってください。
仕組み
エージェントは、Unity AI Gateway URL を介して MCP サービスを呼び出し、すべての呼び出しは同じ管理されたパスを流れます。
- 呼び出し :エージェントは、サービスのUnity AI Gateway URLにMCPリクエストを送信し、呼び出し元のDatabricks IDで認証されます。
- 承認と管理 :ゲートウェイは、呼び出し元がUnity CatalogのMCPサービスに対して
EXECUTEを持っていることを確認します。このサービスは、選択したツールのみを公開し、アタッチされているサービスポリシーを評価します。これにより、呼び出しを許可、拒否、または承認を要求できます。 - 管理された資格情報を使用したプロキシ :リクエストは、サービスのHTTP接続を介して外部MCPサーバーに転送されます。Databricksが資格情報を保存し、OAuthフローとトークンの更新を処理するため、エージェントがそれらを認識することはありません。
- Logの使用状況、監査、トレース :すべての呼び出しはシステムテーブルに記録されるため、使用状況を監視し、時間の経過とともにアクティビティを監査できます。
要件
-
Unity Catalog が有効なワークスペース。
-
外部 MCP サーバーを MCP サービスとして管理するには、アカウントで Unity AI Gateway ベータ版および マネージドMCPサーバー プレビューが有効になっている必要があります。「Databricks プレビューの管理」を参照してください。
-
Model Serving がサポートされているリージョンのワークスペース。モデルサービング機能の可用性を参照してください。
Databricks 提供の MCP サービス
Databricksは、一般的なSaaSアプリケーション向けにsystem.aiスキーマで、すぐに使用できるMCPサービスを提供しているため、エージェントは独自のMCPサーバーをホストまたは登録することなく、これらのツールにアクセスできます。それぞれが組み込みのMCPサービスであり、Unity Catalog名で指定します。エージェントにアクセス権を付与するには、サービス(例:system.ai.github)でEXECUTEを付与してください。接続設定は不要です。組み込みサービスには、プラットフォームマネージドツールと、書き込み操作をブロックするなどの組み込みのサービスポリシーが付属しています。カスタムツールの選択やポリシー機能ではなく、権限付与によって管理します。
MCPサービス | に接続します |
|---|---|
| Slack |
| GitHub |
| Jira および Confluence |
| Google Drive |
| Google カレンダー |
| Gmail |
| Microsoft SharePoint |
Google Drive、Gmail、Google Calendar、または SharePoint の場合、これらの組み込みサービスは、アプリ登録なしで OAuth を処理します。
認証とセキュリティ
Databricksは、マネージドMCPプロキシとUnity Catalog HTTP接続を使用して、外部MCPサーバーへの認証を安全に処理します。
- Shared principal authentication :外部サービスにアクセスする際、すべてのユーザーが同じ資格情報を共有します。これには、ベアラー トークン、OAuthマシン間 (M2M)、およびOAuthユーザー間共有認証が含まれます。これは、外部サービスがユーザー固有のアクセスを必要としない場合、または単一のサービスアカウントで十分な場合に使用します。
- ユーザーごとの認証 (OAuth U2M Per User) : 各ユーザーは独自の資格情報で認証します。外部サービスは個々のユーザーに代わってリクエストを受信し、ユーザー固有のアクセス制御、監査、および説明責任を可能にします。ユーザーのGitHubリポジトリ、Slackメッセージ、カレンダーなどのユーザー固有のリソースにアクセスする場合に使用します。
Databricks は OAuth フローとトークン更新を処理するため、エンドユーザーはトークンを意識する必要がありません。外部MCP接続とLLM Endpointは、Unity AI Gatewayから表示および管理できます。各認証方法の詳細な設定手順については、「HTTP接続」を参照してください。
制限事項
ベータ期間中、MCPサービスには次の制限が適用されます。
- MCPサービス用のSQL DDL(たとえば、
CREATE MCP SERVICE)は利用できません。UIまたはREST APIを使用してMCPサービスを作成および管理します。 - ご自身のMCPサービスとして登録できるのは、外部MCPサーバーのみです。Genie、Apps、またはUnity CatalogエンティティソースをMCPサービスとして登録することは、現在サポートされていません。Databricksは、一般的なSaaSアプリ向けに組み込みMCPサービスも提供しています。
- ツールの選択は、プレフィックス (
get_*) および完全一致パターンをサポートしています。除外パターン(例えば、!delete_*)はサポートされていません。 - Unity Catalogグローバル検索ではMCPサービスは表示されません。
外部MCPサーバー接続には、次の制限事項もあります:
- 外部MCPサーバーは、Model Servingがサポートされているリージョンでのみ利用可能です。これには、AI Playground、Genie Code、Genieでのチャットでの使用が含まれます。モデルサービング機能の可用性を参照してください。
- Private Service Connectを使用した仮想プライベートクラウド(VPC)内のリソースへのプライベート接続はサポートされていません。この機能が必要な場合は、サポートチームにお問い合わせください。
次のステップ
- Register an external MCP server to register and invoke an external MCP server.
- MCP サービスを管理することで、ツールを制限し、サービス ポリシーを適用します。
- エージェントでMCPサーバーを使用して、エージェント コードからプログラムによってMCPサービスを呼び出します。
- MCPをAIアシスタントおよびコーディングエージェントに接続することで、コーディングエージェントとAIアシスタントを接続します。
- 一元的な場所からMCPサーバーとLLM Endpointを管理するには、Unity AI GatewayによるAIガバナンスを使用します。