MCPを管理します
Unity Catalog と Unity Gateway を使用して MCP を共有し、そのツールを選択して、使用量を制御します。これらのコントロールは、登録済みおよびDatabricks提供のMCPに適用されます。
MCPを共有します
呼び出し元には、MCPに対するEXECUTE、その親に対するUSE CATALOGおよびUSE SCHEMAの権限、およびワークスペースへの割り当てが必要です。ツールでは、基になるデータやリソースへのアクセスが必要になる場合もあります。main.default.my_mcpをdata-teamと共有するには、その権限を管理できるIDを使用します。
- Unity Gateway を開き、 MCPs を選択して、MCPの [権限 (Permissions)]tab を開きます。
- [付与] をクリックし、
data-teamと EXECUTE を選択してから、 [付与] をクリックします。 - Catalog Explorerで、親カタログにおいてグループに
USE CATALOGを、親スキーマにUSE SCHEMAを付与します。
End users don't need USE CONNECTION.Reserve it for MCP authors and administrators because it permits direct use of the connection outside the MCP's tool selection and ポリシー.For automation, see Grant access programmatically.
Databricks が提供する MCP へのアクセスを許可するには、メタストア管理者がまず system.ai スキーマで自身に MANAGE を付与する必要があります。これらの MCP は、system.ai に対する default の EXECUTE 権限付与を継承できます。それらを制限するには、これらの広範な権限付与を確認し、GRANTポリシーでモデルとMCPをガバナンスするに従ってください。
利用可能なツールを選択
登録済みの MCP は、defaultですべてのサーバーツールを公開します。登録時に registration の Tools で以下を行います:
- 個別のツールを選択するには、 [手動で選択] を選択します。
- 正確な名前や
get_*などのプレフィックスを入力するには、 Advanced を選択します。 - 新しいツールを最初にレビューする必要がある場合は、 今後このサーバーに追加されるツールを自動的に含める をオフにします。
!delete_* などの除外パターンはサポートされていません。
選択解除されたツールは tools/list に表示されず、それらに対する呼び出しは以下を返します。 Tool not allowed by MCP service configuration.
後でツール選択を変更するには、config.include_tool_selectors で MCP 構成を更新してください。空のリストはすべてのツールを公開します。
ポリシーを適用
ベータ版
MCP のサービス ポリシーはベータ版で提供されており、 Unity AI Gateway サービス ポリシー のプレビューを有効にする必要があります。ワークスペース管理者は、 [プレビュー] ページからこれを有効にします。ワークスペースレベルのプレビューの管理を参照してください。
ポリシーは、ツールが実行される前 (ON CALL) にツール呼び出しを評価し、その結果 (ON RESULT) を評価できます。ツールリストを変更することなく、呼び出しの許可、ブロック、または承認の要求を行うことができます。ポリシーをアタッチするには、MCP 上で MANAGE が必要です。完全なセットアップ要件については、「ポリシーの作成とアタッチ」を参照してください。
ツール呼び出しと結果における機密データのブロック
組み込みの Sensitive Data Detection ポリシーを使用して、個人を特定できる情報(PII)を含む呼び出しをブロックします:
- Unity Gateway を開き、 MCPs を選択して、MCP を開きます。
- [ポリシー] を開き、 [新しいポリシー] をクリックし、
block_sensitive_dataなどの名前を入力します。 - Guardrail type で、 Sensitive Data Detection を選択します。
- 分類タグ で、
class.us_ssnやclass.credit_cardなどのブロックするカテゴリを選択します。アクションとして ブロック を選択します。 - [Phase (フェーズ)] で [Input (入力)] と [Output (出力)] の両方を選択して、ツールの引数とツールの結果を確認します。
- Rank を設定し、 ポリシーを作成 をクリックします。
The policy applies to all アカウント users on the MCP during Beta.For category behavior and more options, see Detect sensitive data with a policy.
特定のエージェント用にツールを制限します
push_files を公開する登録済み MCP の場合、このカスタム関数は、アクションを実行するエージェントが特定の OAuth クライアント ID を持っている場合にそのツールを拒否します。<agent-oauth-client-id> をエージェントのクライアント ID に置き換え、main.governance を関数を作成できるスキーマに置き換えます。
CREATE OR REPLACE FUNCTION main.governance.block_agent_push(event VARIANT)
RETURNS VARIANT
LANGUAGE SQL
RETURN
CASE
WHEN event:type::string = 'request'
AND event:context.tool.name::string = 'push_files'
AND event:context.actor.context.is_on_behalf_of::boolean = true
AND event:context.actor.context.client_id::string = '<agent-oauth-client-id>'
THEN to_variant_object(named_struct('result', 'DENY', 'reason', 'This agent cannot call push_files.'))
ELSE to_variant_object(named_struct('result', 'ALLOW', 'reason', ''))
END;
- 関数を作成するには、SQL エディタで SQL をランします。
- MCP の [ ポリシー ] tab を開き、[ New policy ] をクリックします。
- 名前を入力し、 ガードレールタイプ で カスタム を選択してから、関数を選択します。 Rank を設定し、 ポリシーを作成 をクリックします。
- 拒否を確認するには、そのエージェントを介して
push_filesを呼び出します。別のエージェントを介した呼び出しは、このポリシーにより引き続き許可される必要があります。
この例では、OAuth クライアント ID を含む代理(on-behalf-of)呼び出しに対してのみエージェントを識別します。ツールは tools/list にも表示されます。すべての呼び出し元に対してこれを削除するには、ツール選択を使用します。アクターフィールドについてはポリシー関数リファレンスを、関数権限についてはカスタムポリシーのセットアップを参照してください。組み込みのGitHub書き込みポリシーについては、コーディングエージェントのGitHub MCPアクセスのガバナンスに従ってください。
ツール呼び出しに対するパートナーガードレールの適用
Databricks 外部ポリシー API を実装するサードパーティのガードレールベンダーをすでに使用している場合は、外部サービスポリシーを MCP にアタッチします。Databricks は、入力フェーズではツール名と引数を、出力フェーズではツール結果をベンダーに送信し、ベンダーの ALLOW または DENY の判定を適用します。
- MCP の [ ポリシー ] tab を開き、[ New policy ] をクリックします。
- 名前を入力し、 ガードレールタイプ で 外部 を選択します。
- ベンダーの Endpoint への既存の Unity Catalog HTTP 接続を選択するか、ベンダーの OAuth マシン間認証情報を使用して新規作成します。
- Phase で、 Input 、 Output 、またはその両方を選択します。 Rank を設定し、 ポリシーを作成 をクリックします。
外部サービスポリシーはフェイルクローズになります。ベンダーの Endpoint が応答しない場合や遅延している場合、Databricks は呼び出しを拒否します。接続フィールド、ベンダーに送信されるコンテンツ、およびネットワークのエグレスガイダンスについては、外部サービスポリシーによるパートナーガードールの適用を参照してください。
Limit call volume
すべての呼び出し元で、MCP を 1 分あたり 60 回のツール呼び出しに制限するには:
- Unity Gateway の MCPs で MCP を開きます。
- [概要] で [レート制限] を見つけて、 [設定] または [編集] をクリックします。
- サービス QPMフィールドに
60を入力し、 Save をクリックします。
MCP のレート制限は tools/call リクエストに適用され、1分あたりのクエリー数(QPM)を使用します。制限を超えた呼び出しは HTTP 429 を返します。ユーザーごとおよびグループごとの制限については、レート制限をご覧ください。
使用状況を監視する
- 使用状況: 使用状況ダッシュボードでコール数、エラー、レイテンシを確認するか、
service_type = 'MCP_SERVICE'を使用してsystem.ai_gateway.usageをクエリーします。 - 監査:
system.access.auditで MCP の変更と呼び出し(mcpCall)を確認します。監査Logsを参照してください。 - トレース: 管理者が有効にした後、統合トレーステーブルでツールリクエスト、応答、ポリシー決定を確認します。
例: ツール別の呼び出し数のカウント
SELECT mcp_metadata.tool_name AS tool_name, COUNT(*) AS calls
FROM system.ai_gateway.usage
WHERE service_type = 'MCP_SERVICE'
AND service_name = 'system.ai.github'
GROUP BY mcp_metadata.tool_name
ORDER BY calls DESC;
システムテーブルへのアクセス権限については、システムテーブルによるアカウントアクティビティの監視を参照してください。
ネットワークとクライアントのアクセス
ネットワークルールを使用して接続を制御し、OAuthクライアント設定を使用してクライアントアクセスを管理します。
外部宛先
送信ネットワークルールおよびプライベートエンドポイントについては、ワークスペースから外部 MCP サーバーへとプライベート接続を参照してください。
クライアントアクセス
アカウント管理者は、アカウント設定の[アプリ接続] から専用の OAuth クライアントを有効または無効にする ことができます。無効にすると、アカウント全体のその OAuth クライアントに影響します。Unity Gateway CLI を介して構成されたクライアントは、専用の OAuth アプリの代わりに Databricks CLI ログインを使用します。
特定のエージェントの呼び出しを制限するには、上記の ポリシーの例を使用してください。エージェントの OAuth クライアント ID を持つオンビハーフオブ (on-behalf-of) 呼び出しが必要です。インバウンド IP 制限については、ワークスペースの IP アクセス リストを参照してください。
MCPの更新または削除
MCPの所有権または MANAGE 、およびその親の USE CATALOG と USE SCHEMA が必要です。 MCPs ページまたはカタログエクスプローラーからMCPを開きます。
- 更新: 構成を編集して保存します。MCP 名は変更できません。
- 削除: 3 ドット メニューを開き、 [削除] を選択します。その URL を使用するクライアントは、それを呼び出すことができなくなります。