チュートリアル: コーディング エージェントの GitHub MCP アクセスを管理する

Important

この機能は ベータ版です。 アカウント管理者は、アカウント コンソール の [プレビュー ] ページからこの機能へのアクセスを管理できます。 Manage Azure Databricks プレビューを参照してください。

このチュートリアルでは、Unity カタログと AI Gateway を使用して、GitHubへのコーディング エージェントのアクセスを管理します。 チームが Claude Code や Cursor などのコーディング エージェントを GitHub の MCP サーバーと共に使用し、開発者がリポジトリを読み取り、エージェントを介して pull request を開く必要があるが、すべてのツール呼び出しが監査された状態で強制的にプッシュまたは削除されないようにするとします。

MCP サーバーをホストしたり登録したり、Unity カタログ接続を作成したりしないように、Azure Databricksが提供する事前構築済みの system.ai.github MCP サービスを使用します。 組み込みの サービス ポリシー をアタッチして、書き込み操作をブロックし、チームにアクセス権を付与し、コーディング エージェントを接続して、すべてのツール呼び出しがログに記録されることを確認します。

前提条件

手順 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 が提供するAI セキュリティ保護可能リソースの MCP サービスとサービス ポリシーに関する説明を参照してください。

手順 2: MCP サービスをチームと共有する

既定では、 EXECUTE を持つプリンシパルのみがサービスを呼び出すことができます。 UI から開発者チームにアクセス権を付与するには:

  1. AI ゲートウェイで、[MCP] タブに移動し、共有する MCP サービス (system.ai.githubなど) を選択します。
  2. [アクセス許可] タブに移動します。
  3. [許可] をクリックします。
  4. MCP サービスの呼び出しを許可するプリンシパル ( dev_teamなど) を指定し、 EXECUTE 特権を選択して、[ 確認] をクリックします。

Note

system.ai の MCP サービスへのアクセスを許可するには、メタストア管理者はまず MANAGE スキーマに対する system.ai を自分自身に付与する必要があります。

手順 3: コーディング エージェントを接続する

組み込みサービスの AI ゲートウェイ MCP エンドポイントでコーディング エージェントをポイントします。

https://<workspace-url>/ai-gateway/mcp-services/system.ai.github

各開発者は Azure Databricks にサインインし、MCP Service で EXECUTE を持っている必要があります。 Claude Code、Cursor、およびその他のツールのエージェント固有のセットアップ手順については、「 MCP を AI アシスタントとコーディング エージェントに接続する」を参照してください。 OpenAI Agents SDK を含む呼び出しの例については、「 MCP サービスの呼び出し」を参照してください。

手順 4: アクティビティが管理され、ログに記録されていることを確認する

ガバナンスが両方の端から機能していることを確認します。

  • ポリシーの適用: エージェントから読み取りまたはプル要求ツールが成功しますが、書き込みツールはポリシー エラーで拒否されます。

  • 使用状況ログ: 使用状況システム テーブルにクエリを実行して、呼び出しが記録されていることを確認します。

    SELECT 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;
    

監視の詳細については、「 使用状況の監視」を参照してください。

次のステップ