メインコンテンツまでスキップ

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

このチュートリアルでは、Unity Catalog と AI Gateway を使用して、コーディングエージェントの GitHub へのアクセスを管理する方法について説明します。チームが Claude Code や Cursor などのコーディングエージェントを使用してリポジトリやプルリクエストを読み取る一方で、書き込み操作をブロックし、すべてのツール呼び出しを監査したいとします。

Databricks が提供する system.ai.github MCPサービス を使用するため、MCPサーバーをホストまたは登録したり、Unity Catalogコネクションを作成したりする必要はありません。組み込みのサービスポリシーをアタッチして書き込み操作をブロックし、チームにアクセス権を付与し、コーディングエージェントを接続して、すべてのツールコールがログに記録されることを確認します。

前提条件​

ステップ1:組み込みポリシーで書き込み操作をブロックする​

組み込みの GitHub サービスポリシーをアタッチし、 [Disallow writes] を有効にします。これにより、読み取り専用ツールを許可しながら、GitHub上のデータを作成、変更、または削除するツールがブロックされます。このポリシーはプラットフォームで管理されるため、ポリシー関数を記述する必要はありません。

  1. In the ワークスペース sidebar, click AI Gateway .
  2. MCPs tab で system.ai.github を選択します。
  3. [ ポリシー ] タブ を開き、[ 新しいポリシー ] をクリックします。
  4. block_github_writes などのポリシー名を入力します。
  5. ガードレールタイプ で、 GitHub を選択します。
  6. 書き込み不可 を選択し、 ポリシーの作成 をクリックします。

ポリシーがアタッチされている場合、プルリクエストを作成するツールなど、書き込みツールの tools/call は拒否されます。破壊的な操作をブロックしながら選択した書き込みツールを許可するには、代わりにカスタムサービスポリシーを作成します。利用可能なサービスとポリシー制御の詳細については、Databricks 提供の MCP サービスおよびサービスポリシーを参照してください。

ステップ2: MCPサービスをチームと共有する​

MCP の共有に従って、 dev_team などのチームに system.ai.github へのアクセス権を付与します。そのガイドでは、Databricks が提供する MCP の管理者権限と継承されたアクセス権について説明しています。

ステップ 3: コーディングエージェントを接続する​

Install an MCP-capable coding agent if you don't already have one.Use the Unity Gateway CLI (ug) to configure the gateway connection and launch the agent on your device.For example, ug claude opens Claude Code with that configuration.To configure a client yourself, follow the manual setup below.

  1. ug がインストールされていない場合は、インストールしてバージョンを確認してください。Python 3.12 以降と uv が必要です。インストールの詳細については、コーディングエージェントのクイックスタートを参照してください。

    Bash
    uv tool install git+https://github.com/databricks/unity-gateway
    ug --version
  2. ワークスペース用のコーディングエージェントを設定し、プロンプトが表示されたらサインインします。デバイスがすでに構成されている場合は、このステップをスキップします。

    Bash
    ug configure --workspace https://<workspace-hostname>
  3. 設定されたエージェントに GitHub MCP サービスを追加します。管理者の公開済み構成によってすでに追加されている場合は、このステップをスキップします。

    Bash
    ug mcp add --names system.ai.github
  4. サービスが構成済みの接続に表示されていることを確認します。

    Bash
    ug mcp list
  5. エージェントを起動または再起動してサービスを使用します。たとえば、Claude Codeを起動します。

    Bash
    ug claude

    Claude Codeで接続ステータスを確認するには、/mcpを入力します。その他の起動コマンドおよびMCPのセットアップオプションについては、ツールの追加とスキルおよびug CLIリファレンスを参照してください。

手動でセットアップするには、サポートされているコーディングエージェントでクライアントを選択します。組み込みサービスにはこのMCP Endpointを使用します:

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

OpenAI Agents SDK などの呼び出し例については、Python エージェントでの MCP ツールの使用を参照してください。

ステップ 4:アクティビティが管理およびログに記録されていることを確認します。​

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

  • ポリシーの適用 : エージェントからは、読み取り専用ツールは成功し、プルリクエストを作成するような書き込みツールはポリシーエラーで拒否されます。

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

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

モニタリングの詳細については、使用状況を監視するを参照してください。

次のステップ​