Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In dieser Schnellstartanleitung konfigurieren Sie das GitHub Copilot SDK so, dass Azure Model Context Protocol (MCP)-Tools verwendet werden, damit Ihre Anwendungen mit Azure Ressourcen über natürliche Sprache interagieren können.
Azure MCP bietet Tools, mit denen KI-Assistenten direkt mit Azure Ressourcen interagieren können. Wenn Sie diese Tools in das Copilot SDK integrieren, können Sie Anwendungen erstellen, die natürliche Sprache verwenden, um Azure Abonnements, Ressourcengruppen, Speicherkonten und vieles mehr zu verwalten.
Voraussetzungen
- GitHub Copilot CLI installiert.
-
Node.js installiert (zum Ausführen des Servers über
npx). -
Azure CLI installiert und authentifiziert (
az login).
Anmelden bei Azure MCP Server für die lokale Entwicklung
Azure MCP Server authentifiziert sich bei Microsoft Entra ID mithilfe der Azure Identity-Bibliothek für .NET. Der Server unterstützt zwei Authentifizierungsmodi:
-
Brokermodus: Verwendet die systemeigene Authentifizierung Ihres Betriebssystems (z. B. Windows Web Account Manager) mit
InteractiveBrowserCredential. - Anmeldeinformationsketten-Modus: Es wird versucht, mehrere Authentifizierungsmethoden in einer festgelegten Reihenfolge zu verwenden: Umgebungsvariablen, Visual Studio Code, Visual Studio, Azure CLI, Azure PowerShell, Azure Developer CLI und interaktive Browserauthentifizierung.
Melden Sie sich mit einer der folgenden Methoden an:
- Öffnen Sie die Befehlspalette (
Ctrl+Shift+PoderCmd+Shift+Pauf dem Mac). - Führen Sie Azure aus: Melden Sie sich an , und folgen Sie den Anweisungen.
Nach der Anmeldung kann Azure MCP Server Vorgänge für Azure-Dienste basierend auf Ihren Berechtigungen authentifizieren und ausführen.
Azure MCP Server-Konfigurationsbeispiel
Unabhängig vom verwendeten Programmier-SDK müssen Sie Azure MCP-Server im App-Kontext so konfigurieren, dass seine Tools verfügbar sind. Die grundlegende Konfiguration sieht wie im folgenden Beispiel aus:
{
"mcp_servers": {
"azure-mcp": {
"type": "local",
"command": "npx",
"args": ["-y", "@azure/mcp@latest", "server", "start"],
"tools": ["*"]
}
}
}
Der tools: ["*"] Parameter ist unerlässlich – es ermöglicht alle Tools vom MCP-Server für die Sitzung.
Integrationsbeispiele
Die folgenden Beispiele zeigen, wie das SDK in verschiedene Sprachen integriert wird.
Hinweis
Für einen schnelleren Start können Sie den Azure MCP Server global installieren, indem Sie npm install -g @azure/mcp@latest verwenden.
Installation
Installieren Sie das Python SDK-Paket mit pip.
pip install github-copilot-sdk
Beispielcode
Der folgende Code veranschaulicht einen vollständigen Fluss:
import asyncio
from copilot import CopilotClient
from copilot.generated.session_events import SessionEventType
async def main():
# Initialize the Copilot client
client = CopilotClient({
"cli_args": [
"--allow-all-tools",
"--allow-all-paths",
]
})
await client.start()
# Configure Azure MCP server in session config
azure_mcp_config = {
"azure-mcp": {
"type": "local",
"command": "npx",
"args": ["-y", "@azure/mcp@latest", "server", "start"],
"tools": ["*"], # Enable all Azure MCP tools
}
}
# Create session with MCP servers
session = await client.create_session({
"model": "gpt-4.1", # Default model; BYOK can override
"streaming": True,
"mcp_servers": azure_mcp_config,
})
# Handle events
def handle_event(event):
if event.type == SessionEventType.ASSISTANT_MESSAGE_DELTA:
if hasattr(event.data, 'delta_content') and event.data.delta_content:
print(event.data.delta_content, end="", flush=True)
elif event.type == SessionEventType.TOOL_EXECUTION_START:
tool_name = getattr(event.data, 'tool_name', 'unknown')
print(f"\n[TOOL: {tool_name}]")
session.on(handle_event)
# Send prompt
await session.send_and_wait({
"prompt": "List all resource groups in my Azure subscription"
})
await client.stop()
if __name__ == "__main__":
asyncio.run(main())
Der vorherige Code:
- Initialisiert den Copilot-Client.
- Konfiguriert den Azure MCP-Server mithilfe von
npx. - Erstellt eine Sitzung mit dem GPT-4.1-Modell und aktiviertem Streaming.
- Behandelt Ereignisse zum Drucken von Assistentenantworten und Toolausführungsprotokollen.
- Sendet eine Aufforderung zum Auflisten von Azure-Ressourcengruppen.