Tutorial: Kontrolliere den GitHub-MCP-Zugriff eines Coding-Agenten

In diesem Lernprogramm steuern Sie den Zugriff eines Codierungs-Agents auf GitHub mithilfe von Unity Catalog und AI Gateway. Angenommen, dein Team verwendet einen Coding-Agent wie Claude Code oder Cursor, um Repositories und Pull Requests zu lesen, aber du möchtest Schreiboperationen blockieren und jeden Toolaufruf prüfen.

Du nutzt den system.ai.github MCP-Service, den Azure Databricks bereitstellt, also hostest oder registrierst du keinen MCP-Server oder erstellst keine Unity-Catalog-Verbindung. Sie fügen eine integrierte Dienstrichtlinie an, um Schreibvorgänge zu blockieren, Ihrem Team Zugriff zu gewähren, einen Codierungs-Agent zu verbinden und zu bestätigen, dass jeder Toolaufruf protokolliert wird.

Voraussetzungen

Schritt 1: Blockieren Sie Schreiboperationen mit einer integrierten Richtlinie

Hängen Sie die integrierte GitHub-Service-Richtlinie an und aktivieren Sie Schreibzugriffe unterbinden. Dies blockiert Tools, die Daten auf GitHub erstellen, verändern oder löschen, während schreibgeschützte Tools erlaubt sind. Die Richtlinie ist plattformgesteuert, sodass Sie keine Richtlinienfunktion schreiben müssen.

Benutzeroberfläche

  1. Klicken Sie in der Arbeitsbereichs-Randleiste auf AI-Gateway.
  2. Wählen Sie auf der Registerkarte MCPs die Option system.ai.github.
  3. Öffnen Sie die Registerkarte "Richtlinien ", und klicken Sie dann auf "Neue Richtlinie".
  4. Geben Sie einen Richtliniennamen ein (beispielsweise block_github_writes).
  5. Unter Guardrail-Typ wählen Sie GitHub.
  6. Wählen Sie Schreibzugriffe unterbinden und klicken Sie dann auf Richtlinie erstellen.

REST API

Die API-Richtlinie verwendet den system.ai.github_policy Handler mit disallow_writes gestellt auf 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" }
        }
      ]
    }
  }'

Das PATCH ersetzt die Richtlinienliste des Dienstes. Wenn der Dienst bereits Richtlinien hat, fügen Sie diese service_policies hinzu, damit sie weiterhin angehängt bleiben.

Mit der angehängten Richtlinie wird eine tools/call für ein Schreibwerkzeug abgelehnt, einschließlich Tools, die Pull Requests erstellen. Um ausgewählte Schreibwerkzeuge zu ermöglichen, während destruktive Operationen blockiert werden, erstellen Sie stattdessen eine benutzerdefinierte Service-Policy . Weitere Informationen zu den verfügbaren Diensten und Richtlinienkontrollen finden Sie unter Databricks-bereitgestellte MCP-Dienste und Servicerichtlinien.

Schritt 2: Teilen des MCP-Diensts mit Ihrem Team

Wählen Sie MCP freigeben, um Ihrem Team, wie z. B. dev_team, Zugriff auf system.ai.github zu gewähren. Dieser Leitfaden behandelt Administratorberechtigungen und vererbten Zugriff für von Databricks bereitgestellte MCPs.

Schritt 3: Verbinden Sie Ihren Coding-Agenten

Installieren Sie einen MCP-fähigen Programmieragenten, falls Sie noch keinen haben. Verwenden Sie die Unity Gateway CLI (ug), um die Gateway-Verbindung zu konfigurieren und den Agenten auf Ihrem Gerät zu starten. Zum Beispiel öffnet ug claude Claude Code mit dieser Konfiguration. Um einen Client selbst zu konfigurieren, folgen Sie der untenstehenden manuellen Einrichtung.

  1. Wenn ug nicht installiert ist, installieren Sie es und prüfen Sie die Version. Sie brauchen Python ab 3.12 und uv. Siehe die Schnellstartanleitung zum Coding-Agenten für Installationsdetails.

    uv tool install git+https://github.com/databricks/unity-gateway
    ug --version
    
  2. Konfigurieren Sie Ihren Coding-Agenten für Ihren Arbeitsbereich und melden Sie sich an, wenn Sie aufgefordert werden. Wenn dein Gerät bereits konfiguriert ist, überspringe diesen Schritt.

    ug configure --workspace https://<workspace-hostname>
    
  3. Fügen Sie den GitHub MCP Service zu Ihrem konfigurierten Agenten hinzu. Wenn die veröffentlichte Konfiguration Ihres Administrators sie bereits hinzugefügt hat, überspringen Sie diesen Schritt.

    ug mcp add --names system.ai.github
    
  4. Bestätigen Sie, dass der Dienst in Ihren konfigurierten Verbindungen angezeigt wird:

    ug mcp list
    
  5. Starten oder starten Sie Ihren Agenten neu, um den Dienst zu nutzen. Zum Beispiel starten Sie Claude Code:

    ug claude
    

    Im Claude Code geben Sie ein, /mcp um den Verbindungsstatus zu überprüfen. Für weitere Startbefehle und MCP-Einrichtungsoptionen siehe Add Tools and Skills sowie die Ug CLI-Referenz.

Für die manuelle Einrichtung wähle deinen Client unter Supported coding agents aus. Verwenden Sie diesen MCP-Endpunkt für den integrierten Service:

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

Für Invocation-Beispiele, einschließlich des OpenAI Agents SDK, siehe Use MCP tools in a Python Agent.

Schritt 4: Bestätigen Sie, dass die Aktivität gesteuert und protokolliert wird

Überprüfen Sie, ob Governance von beiden Enden funktioniert:

  • Richtliniendurchsetzung: Vom Agenten aus ist ein Schreibschutz-Tool erfolgreich, während ein Schreibwerkzeug, wie etwa eines, das eine Pull Request erstellt, mit einem Richtlinienfehler abgelehnt wird.

  • Verwendungsprotokollierung: Abfragen der Verwendungssystemtabelle, um zu bestätigen, dass Anrufe aufgezeichnet werden:

    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;
    

Weitere Informationen zur Überwachung finden Sie unter Überwachen der Nutzung.

Nächste Schritte