チュートリアル: コーディングエージェントのGitHub MCPアクセスを管理する
ベータ版
この機能はベータ版です。アカウント管理者は、アカウントコンソールの [プレビュー] ページからこの機能へのアクセスを管理できます。Databricksプレビューを管理するを参照してください。
このチュートリアルでは、Unity CatalogとAI Gatewayを使用して、コーディングエージェントのGitHubへのアクセスを管理します。チームがClaude CodeやCursorのようなコーディングエージェントをGitHubのMCPサーバーと組み合わせて使用しており、開発者がエージェントを介してリポジトリを読み取り、プルリクエストを開くことは許可するが、強制プッシュや削除は決して行わず、すべてのツール呼び出しが監査されるようにしたいとします。
Databricksが提供する事前に構築されたsystem.ai.github MCPサービスを使用するため、MCPサーバーをホストしたり登録したり、Unity Catalog接続を作成したりする必要はありません。組み込みのサービスポリシーをアタッチして、書き込み操作をブロックし、チームにアクセスを許可し、コーディングエージェントを接続し、すべてのツール呼び出しがログに記録されていることを確認します。
前提条件
-
Unity Catalog が有効になっているワークスペース。Unity Catalog の概要を参照してください。
-
お客様のアカウントで、Unity AI GatewayプレビューとDatabricksが提供するMCPサービスプレビューが有効になっています。「Databricks プレビューの管理」を参照してください。
-
組み込みサービス
system.ai.githubに対する次の権限:MANAGE、サービスポリシーをアタッチするには。EXECUTE、サービスを呼び出し、他のユーザーにアクセス権を付与するためです。
-
ワークスペースに対して認証済みの Databricks CLI。
ステップ1:組み込みポリシーで破壊的な操作をブロックする
system.ai.github MCPサービスはGitHubの読み取りツールを公開し、デフォルトで書き込みツールではクローズドフェイルします。その保証を明示的かつ統制されたものにするには、組み込みのsystem.ai.github_policyポリシーをdisallow_writesオプションでアタッチします。組み込みポリシーはプラットフォーム管理です。独自の関数を作成する代わりに、ハンドラーを参照します。
databricks api patch \
"/api/2.1/unity-catalog/mcp-services/system.ai.github?update_mask=config.service_policies" \
--json '{
"config": {
"service_policies": [
{
"name": "block_github_writes",
"policy_type": "POLICY_TYPE_BUILTIN",
"handler": "system.ai.github_policy",
"options": { "disallow_writes": "true" }
}
]
}
}'
ポリシーがアタッチされていると、任意の書き込みツール(読み取り専用とマークされていないツール)のtools/callは拒否されますが、読み取りツールとプルリクエストツールは引き続き機能します。組み込みサービスとポリシーの詳細については、Databricksが提供するMCPサービスおよびAIセキュリティ対象のサービスポリシーを参照してください。
ステップ2: MCPサービスをチームと共有する
デフォルトでは、EXECUTEを持つプリンシパルのみがサービスを呼び出すことができます。UIから開発者チームにアクセス権を付与するには:
- AI Gateway で、 MCPs タブに移動して、
system.ai.githubなど、共有する MCP サービスを選択します。 - 権限 タブに移動します。
- 付与 をクリックします。
- MCP サービスを呼び出すことを許可するプリンシパル (例:)
dev_teamを指定し、**EXECUTE** 権限を選択して、**Confirm** をクリックします。
system.ai の MCP サービスにアクセス権を付与するには、メタストア管理者がまず、system.ai スキーマに対する MANAGE を自分自身に付与する必要があります。
ステップ3:コーディングエージェントを接続する
組み込みサービスについては、コーディングエージェントを AI Gateway MCP エンドポイントに向けます。
https://<workspace-url>/ai-gateway/mcp-services/system.ai.github
各開発者はDatabricksに認証し、MCPサービス上でEXECUTEを持っている必要があります。Claude Code、Cursor、その他のツールにおけるエージェント固有のセットアップステップについては、MCPをAIアシスタントとコーディングエージェントに接続するを参照してください。OpenAI Agents SDKを含む呼び出し例については、MCPサービスを呼び出すを参照してください。
ステップ 4:アクティビティが管理およびログに記録されていることを確認します。
ガバナンスが両端から機能していることを確認します:
-
「**ポリシーの適用**」: エージェントからは、読み取りツールまたはプルリクエストツールは成功し、書き込みツールはポリシーエラーで拒否されます。
-
**使用状況ロギング**:使用状況システムテーブルにクエリを実行して、呼び出しが記録されていることを確認します。
SQLSELECT service_name, mcp_metadata.tool_name AS tool_name, status_code, COUNT(*) AS calls
FROM system.ai_gateway.usage
WHERE service_type = 'MCP_SERVICE'
AND service_name = 'system.ai.github'
GROUP BY service_name, mcp_metadata.tool_name, status_code
ORDER BY calls DESC;
モニタリングの詳細については、使用状況を監視するを参照してください。