Tutorial: Beheer de GitHub MCP-toegang van een codeeragent

In deze zelfstudie bepaalt u de toegang van een coderingsagent tot GitHub met behulp van Unity Catalog en AI Gateway. Stel dat je team een coding agent zoals Claude Code of Cursor gebruikt om repositories en pull requests te lezen, maar je wilt write-operaties blokkeren en elke toolcall auditen.

Je gebruikt de system.ai.github MCP-service die Azure Databricks aanbiedt, dus je host of registreert geen MCP-server en maakt geen Unity Catalog-verbinding aan. U voegt een ingebouwd servicebeleid toe om schrijfbewerkingen te blokkeren, uw team toegang te verlenen, een coderingsagent te verbinden en te bevestigen dat elke aanroep van het hulpprogramma is vastgelegd.

Prerequisites

Stap 1: Blokschrijfoperaties met een ingebouwd beleid

Voeg het ingebouwde GitHub-servicebeleid toe en schakel Disallow writes in. Dit blokkeert tools die gegevens op GitHub aanmaken, wijzigen of verwijderen, maar laat hulpmiddelen met alleen-leestoegang toe. Het beleid wordt platformbeheerd, dus je hoeft geen beleidsfunctie te schrijven.

UI (Gebruikersinterface)

  1. Klik in de zijbalk van de werkruimte op AI Gateway.
  2. Selecteer op de system.ai.github-tab .
  3. Open het tabblad Beleid en klik vervolgens op Nieuw beleid.
  4. Voer een polisnaam in, zoals block_github_writes.
  5. Selecteer onder het type GuardrailGitHub.
  6. Selecteer Schrijfacties Niet toestaan en klik vervolgens op Beleid Aanmaken.

REST API

Het API-beleid gebruikt de system.ai.github_policy handler met disallow_writes ingesteld op true:

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" }
        }
      ]
    }
  }'

Dan PATCH vervangt hij de beleidslijst van de dienst. Als de dienst al polissen heeft, neem die dan service_policies op zodat ze gehecht blijven.

Met het beleid eraan gekoppeld wordt een tools/call for a write-tool afgewezen, inclusief tools die pull requests maken. Om geselecteerde schrijftools toe te staan terwijl destructieve bewerkingen worden geblokkeerd, maak je in plaats daarvan een aangepast servicebeleid . Raadpleeg Databricks-provided MCP Services en Service policies voor meer informatie over de beschikbare diensten en beleidsinstellingen.

Stap 2: de MCP-service delen met uw team

Gebruik Share an MCP om een team, zoals dev_team, toegang te geven tot system.ai.github. Die gids behandelt beheerdersrechten en geërfde toegang voor door Databricks geleverde MCP's.

Stap 3: Verbind je coderingsagent

Installeer een MCP-geschikte codeeragent als je die nog niet hebt. Gebruik de Unity Gateway CLI (ug) om de gatewayverbinding te configureren en de agent op je apparaat te starten. Bijvoorbeeld, ug claude opent Claude Code met die configuratie. Om zelf een client te configureren, kun je de onderstaande handleiding voor handmatige configuratie volgen.

  1. Als ug het niet geïnstalleerd is, installeer het dan en controleer de versie. Je hebt Python 3.12 of hoger nodig en uv. Zie de quickstart van de coderingsagent voor installatiedetails.

    uv tool install git+https://github.com/databricks/unity-gateway
    ug --version
    
  2. Configureer je codeeragent voor je werkruimte en log in wanneer je erom vraagt. Als je apparaat al is geconfigureerd, sla dan deze stap over.

    ug configure --workspace https://<workspace-hostname>
    
  3. Voeg de GitHub MCP-service toe aan je ingestelde agents. Als de gepubliceerde configuratie van je beheerder het al heeft toegevoegd, sla dan deze stap over.

    ug mcp add --names system.ai.github
    
  4. Controleer of de dienst verschijnt in je geconfigureerde verbindingen:

    ug mcp list
    
  5. Start of herstart je agent om de dienst te gebruiken. Bijvoorbeeld Claude Code lanceren:

    ug claude
    

    In Claude Code voer /mcp je in om de verbindingsstatus te controleren. Voor andere launch-commando's en MCP-instellingen, zie Add tools and skills en de ug CLI-referentie.

Voor handmatige installatie kies je je client in Supported coding agents. Gebruik dit MCP-eindpunt voor de ingebouwde service:

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

Voor voorbeelden van aanroepen, inclusief de OpenAI Agents SDK, zie Gebruik MCP-tools in een Python-agent.

Stap 4: Controleren of de activiteit wordt beheerd en geregistreerd

Controleer of het beheer aan beide kanten werkt:

  • Beleidshandhaving: Vanuit de agent slaagt een alleen-lezen tool, terwijl een schrijftool, zoals een pull request, wordt afgewezen met een beleidsfout.

  • Gebruikslogboekregistratie: Voer een query uit op de tabel met het gebruikssysteem om te bevestigen dat aanroepen worden vastgelegd:

    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;
    

Zie Gebruik bewaken voor meer informatie over bewaking.

Volgende stappen