Freigeben über


Verbinden des GitHub Copilot-Codierungs-Agents mit dem Azure MCP-Server

In diesem Artikel erfahren Sie, wie Sie den GitHub Copilot-Codierungs-Agent mit dem Azure MCP-Server einrichten und verbinden, damit der Codierungs-Agent Ihre Azure-spezifischen Dateien und Azure-Ressourcen verstehen kann, um Änderungen an Ihren Codedateien vorzunehmen.

Im GitHub-Repository erstellt das Zuweisen von GitHub-Issues an den GitHub Copilot-Coding-Agent einen Pull-Request mit den Änderungen an Ihrem Code. Wenn die angeforderten Änderungen Zugriff auf Ihre Azure-Ressourcen erfordern, muss der GitHub Copilot-Codierungs-Agent den Azure MCP-Server verwenden. Bevor der GitHub Copilot-Codierungs-Agent den Azure MCP-Server verwenden kann, um Änderungen an Ihrem Azure-basierten Projekt-Agent vorzunehmen, müssen Sie den GitHub Copilot-Codierungs-Agent konfigurieren und ihm die richtigen Berechtigungen in Azure erteilen. Sie können alles manuell konfigurieren, viele Schritte werden jedoch mithilfe azdder Azure Developer CLI und der coding-agent Erweiterung automatisiert.

Voraussetzungen

  • Ein Azure-Konto und Zugriff auf ein Azure-Abonnement. Ausführliche Informationen zum Einrichten dieser Konten finden Sie auf der Preisseite für Azure-Konten.

  • Ein GitHub-Konto und ein GitHub Copilot-Abonnement. Ausführliche Informationen zum Einrichten finden Sie unter Erstellen eines Kontos auf GitHub und Schnellstart für GitHub Copilot.

  • Ein vorhandener lokaler Klon eines GitHub-Repositorys. Da in diesem Artikel beschrieben wird, wie Sie die Verbindung zwischen GitHub Copilot-Codierungs-Agent mit dem Azure MCP-Server einrichten, sollte das GitHub-Repository Bereitstellungsskripts für Azure enthalten, z. B. Bicep- oder Terraform-Vorlagen.

Konfigurieren des GitHub-Repositorys für die Verwendung des Azure MCP-Servers

Die azd Codierungs-Agent-Erweiterung vereinfacht die erforderlichen Schritte, um die Verbindung zwischen dem GitHub Copilot-Codierungs-Agent und dem Azure MCP-Server für Ihr Azure-Abonnement sicher einzurichten. Zunächst erstellt es ein Konto in Ihrem Azure-Abonnement und weist ihm eine Rolle mit erforderlichen Berechtigungen zu. Zweitens wird ein JSON-Codeausschnitt bereitgestellt, der erforderlich ist, um den Azure MCP-Server mit dem GitHub Copilot-Codierungs-Agent einzuführen.

  1. Wenn azd noch nicht installiert ist, befolgen Sie die Anweisungen, um es zu installieren.

  2. Navigieren Sie im Terminal zum lokalen Klon des Repositorys, mit dem Sie arbeiten möchten.

  3. Rufen Sie die Azd-Codierungs-Agent-Erweiterung mit dem Befehl auf: azd coding-agent config.

  4. Während der Installation werden Sie aufgefordert, Folgendes auszuwählen:

    • Azure-Abonnement
    • Welches GitHub-Repository den Copilot Coding-Agent verwendet
    • Ganz gleich, ob Sie eine neue oder vorhandene vom Benutzer verwaltete Identität erstellen möchten.
    • Ein Azure-Speicherort
    • Eine Azure-Ressourcengruppe
    • Das GitHub-Repository, in dem ein neuer Branch erstellt wird, der die generierte Setup-Datei für den GitHub Actions-Workflow enthält.

    Wenn Sie den Standort und die Ressourcengruppe auswählen, sollten Sie denselben Zielspeicherort und dieselbe Ressourcengruppe wie die Azure-Ressourcen in der Anwendung verwenden.

  5. Nach kurzer Zeit erstellt die azd Code-Agent-Erweiterung eine vom Benutzer verwaltete Identität (oder verwendet die vorhandene), weist sie einer Rolle zu, speichert Identitätswerte in der GitHub-Repositoryumgebung und erstellt und pusht einen Branch, der die generierte GitHub Actions-Workflow-Setupdatei enthält.

  6. In der Konsole wird eine Meldung angezeigt:

    (!)
    (!) NOTE: Some tasks must still be completed, manually:
    (!)
    

    In der Regel gibt es drei Aufgaben:

    • Führen Sie den Branch mit der generierten GitHub Actions-Workfloweinrichtungsdatei zusammen.
    • Konfigurieren Sie die verwalteten Identitätsrollen des Copilot-Codierungs-Agents im Azure-Portal. Standardmäßig wird die Rolle "Reader" zugewiesen. Möglicherweise möchten Sie ihm jedoch andere Berechtigungen erteilen, basierend auf dem, was der Codierungs-Agent autonom ausführen soll.
    • Besuchen Sie den Link, um die MCP-Konfiguration einzurichten. Um manuell dorthin zu navigieren, wechseln Sie in GitHub zu "Settings > Copilot > Coding Agent > MCP Configuration" und fügen Sie den bereitgestellten JSON-Codeausschnitt ein. Ein Beispiel:
    {
        "mcpServers": {
            "Azure": {
                "type": "local",
                "command": "npx",
                "args": [
                    "-y",
                    "@azure/mcp@latest",
                    "server",
                    "start"
                ],
                "tools": [
                    "*"
                ]
            }
        }
    }
    
  7. Schließlich können Sie zulassen, dass die azd Codierungs-Agent-Erweiterung den Browser öffnet, damit Sie den Pull Request erstellen können, um den Branch mit der generierten GitHub Actions-Workflow-Setupdatei zusammenzuführen.

Ein Issue in GitHub erstellen, um den GitHub Copilot-Coding-Agenten zu starten

Zu diesem Zeitpunkt richten Sie den GitHub Copilot-Codierungs-Agent erfolgreich ein, um den Azure MCP-Server für alle GitHub-Probleme zu verwenden, die Sie GitHub Copilot-Codierungs-Agent zuweisen, die ein Verständnis von Azure-Bereitstellungen und -Ressourcen erfordern.

Angenommen, Sie möchten den Speicher erhöhen, der für PostgreSQL zugewiesen ist, wenn er in Azure Database for PostgreSQL bereitgestellt wird. Sie würden ein Problem erstellen, um Ihre Bicep-Vorlage so zu ändern, dass die nächste verfügbare Speicherebene verwendet wird und dies GitHub Copilot zugewiesen wird.

Hinweis

Die Rolle "Benutzerverwaltete Identität" ist standardmäßig auf "Reader" festgelegt, sodass die von Ihnen angeforderten Änderungen das Ändern von Bereitstellungsskripts wie Bicep- oder Terraform-Vorlagen sein sollten. Das direkte Ändern vorhandener Ressourcen in Ihrem Azure-Abonnement ist aufgrund der Berechtigungsstufe der Rolle "Leser" nicht zulässig.

  1. Wechseln Sie in GitHub im Repository mit Ihrem Azure-basierten Projekt, in dem Sie den Azure MCP-Server aktiviert haben, zu "Probleme".

  2. Wählen Sie die Schaltfläche "Neues Problem" aus. Beschreiben Sie die Änderung, die GitHub Copilot-Codierungs-Agent in den Titel- und Beschreibungsfeldern vornehmen soll. Wählen Sie die Schaltfläche "Erstellen" aus.

    Aus dem Beispiel weiter oben können Sie den folgenden Text verwenden, um Ihr Problem zu beschreiben.

    Title: Increase database storage
    
    Currently, when deploying to Azure via Bicep, we're creating a PostgreSQL database with 32gb of storage. I need the next tier higher -- whatever that is.
    

    Dieses Beispielproblem macht eine einfache, klare Anforderung, auch wenn der Benutzer nicht genau weiß, was er fragt. Es ermöglicht dem Azure MCP-Server, nach verfügbaren Speicherebenen für Azure Database fo PostgreSQL Flexible Server und die Einstellung in der Bicep-Vorlage zu recherchieren, die erforderlich ist, um diese Änderung vorzunehmen.

    Von Bedeutung

    Stellen Sie sicher, dass Sie das Wort "Azure" in Ihrer Eingabeaufforderung verwenden, um sicherzustellen, dass GitHub Copilot Tools vom Azure MCP-Server anfordert.

  3. Wählen Sie unter " Assignees" die Schaltfläche "Zu Copilot zuweisen" aus. Das Dialogfeld "Copilot einem Problem zuweisen" wird angezeigt, in dem Sie das Ziel-Repository, den Basisbranch modifizieren und eine optionale Eingabeaufforderung hinzufügen können. Wählen Sie die Schaltfläche "Zuweisen" aus.

  4. Sobald das Problem dem GitHub Copilot-Codierungs-Agent zugewiesen wurde, wird ein Link zur Pullanforderung mit dem Präfix "[WIP]" angezeigt, der Sie darüber informiert, dass die Arbeit gestartet wird.

  5. Wählen Sie den Link "[WIP]" aus, um die Pullanforderung anzuzeigen.

  6. Wählen Sie im Textkörper der Pullanforderung den Link aus, um die Codierungssitzung anzuzeigen. Dies zeigt den Fortschritt, den der Copilot Coding-Agent auf der Anforderung vornimmt, ähnlich wie in Visual Studio.

  7. Nach Abschluss des Vorgangs fordert der GitHub Copilot-Coding-Agent eine Codeüberprüfung an. Verwenden Sie Ihren normalen Workflow, um mit GitHub zu iterieren und behandeln Sie den GitHub Copilot-Codierungsassistenten als einen Kollegen.

  8. Wenn Sie die Änderungen genehmigen und die Pullanforderung zusammenführen, behebt GitHub Copilot das ursprüngliche Problem, das Sie erstellt haben.