Herstellen einer Verbindung mit Modellkontextprotokollservern (Vorschau) (klassisch)

Hinweis

Dieses Dokument bezieht sich auf die Microsoft Foundry (classic) Agents.

🔍 Sehen Sie sich die neue MCP-Tool-Dokumentation an. Agents (klassisch) sind jetzt veraltet und werden am 31. März 2027 eingestellt. Verwenden Sie die neuen Agents im allgemein verfügbaren Microsoft Foundry Agents Service. Folgen Sie dem Migrationshandbuch , um Ihre Workloads zu aktualisieren.

Sie können die Funktionen Ihres Foundry-Agents erweitern, indem Sie sie mit Tools verbinden, die auf MCP-Servern (Remote Model Context Protocol) gehostet werden (bringen Sie Ihren eigenen MCP-Serverendpunkt). Entwickler und Organisationen verwalten diese Server. Die Server stellen Tools bereit, auf die MCP-kompatible Clients wie z. B. foundry Agent Service zugreifen können.

MCP ist ein offener Standard, der definiert, wie Anwendungen Tools und Kontextdaten für große Sprachmodelle (LLMs) bereitstellen. Sie ermöglicht eine konsistente, skalierbare Integration externer Tools in Modellworkflows.

Überlegungen zur Verwendung von nicht-Microsoft-Diensten und -Servern

Ihre Nutzung verbundener nicht Microsoft-Dienste unterliegt den Bedingungen zwischen Ihnen und dem Dienstanbieter. Wenn Sie eine Verbindung mit einem Nicht-Microsoft-Dienst herstellen, werden einige Ihrer Daten (z. B. Aufforderungsinhalte) an den Dienst übergeben, der nicht Microsoft Dienst ist, oder Ihre Anwendung erhält möglicherweise Daten vom Dienst, der nicht Microsoft ist. Sie sind für die Verwendung von nicht Microsoft-Dienste und Daten sowie für alle Gebühren verantwortlich, die dieser Nutzung zugeordnet sind.

Die mcP-Remoteserver, die Sie mit dem in diesem Artikel beschriebenen MCP-Tool verwenden, wurden von Dritten erstellt, nicht Microsoft. Microsoft diese Server nicht getestet oder überprüft hat. Microsoft hat keine Verantwortung für Sie oder andere Personen in Bezug auf Ihre Nutzung von Remote-MCP-Servern.

Es wird empfohlen, die MCP-Server, die Sie dem Foundry Agent Service hinzufügen, sorgfältig zu überprüfen und nachzuverfolgen. Außerdem wird empfohlen, dass Sie sich auf Server verlassen, die von vertrauenswürdigen Dienstanbietern selbst und nicht von Proxys gehostet werden.

Mit dem MCP-Tool können Sie benutzerdefinierte Header wie Authentifizierungsschlüssel oder Schemas übergeben, die ein MCP-Remoteserver möglicherweise benötigt. Es wird empfohlen, alle Daten, die für Remote-MCP-Server freigegeben werden, zu überprüfen und die Daten zu Auditzwecken zu protokollieren. Beachten Sie Nicht-Microsoft-Praktiken für die Aufbewahrung und den Standort von Daten.

Funktionsweise

Sie müssen einen MCP-Remoteserver (einen vorhandenen MCP-Serverendpunkt) in den Foundry Agent Service bringen. Sie können mehrere MCP-Remoteserver mitbringen, indem Sie sie als Tools hinzufügen. Für jedes Tool müssen Sie einen eindeutigen server_label Wert innerhalb desselben Agents und einen server_url Wert bereitstellen, der auf den Remote-MCP-Server verweist. Überprüfen Sie unbedingt sorgfältig, welche MCP-Server Sie dem Foundry Agent Service hinzufügen.

Das MCP-Tool unterstützt benutzerdefinierte Header, sodass Sie eine Verbindung mit den MCP-Servern herstellen können, indem Sie die Authentifizierungsschemas verwenden, die sie benötigen, oder indem Sie andere Header übergeben, die von den MCP-Servern benötigt werden. Sie können Kopfzeilen nur angeben, indem Sie sie bei jeder Ausführung in tool_resources einschließen. Auf diese Weise können Sie API-Schlüssel, OAuth-Zugriffstoken oder andere Anmeldeinformationen direkt in Ihrer Anforderung platzieren.

Der am häufigsten verwendete Header ist der Autorisierungsheader. Header, die Sie übergeben, sind nur für die aktuelle Ausführung verfügbar und werden nicht beibehalten.

Weitere Informationen zur Verwendung von MCP finden Sie unter:

Verwendungsunterstützung

Azure KI-Gießereiunterstützung Python SDK C# SDK JavaScript SDK REST-API Grundlegendes Agent-Setup Standard-Agenten-Einrichtung
- ✔️ - - ✔️ ✔️ ✔️

Konfiguration

  1. Erstellen Sie einen Foundry-Agent, indem Sie die Schritte in der Schnellstartanleitung ausführen.

  2. Suchen Sie den MCP-Remoteserver, mit dem Sie eine Verbindung herstellen möchten, z. B. den GitHub MCP-Server. Erstellen oder aktualisieren Sie einen Foundry-Agent mit einem mcp Tool mit den folgenden Informationen:

    1. server_url: Die URL des MCP-Servers; beispiel: https://api.githubcopilot.com/mcp/.
    2. server_label: Ein eindeutiger Bezeichner dieses MCP-Servers für den Agent; beispiel: github.
    3. allowed_tools: Eine optionale Liste der Tools, auf die dieser Agent zugreifen und verwenden kann.
  3. Erstellen Sie einen Durchlauf und übergeben Sie zusätzliche Informationen über das mcp-Werkzeug in die tool_resources-Kopfzeilen.

    1. tool_label: Verwenden Sie den Bezeichner, den Sie beim Erstellen des Agents angegeben haben.
    2. headers: Übergeben Sie eine Reihe von Headern, die der MCP-Server benötigt.
    3. require_approval: Legen Sie optional fest, ob eine Genehmigung erforderlich ist. Unterstützte Werte sind:
      • always: Ein Entwickler muss eine Genehmigung für jeden Anruf bereitstellen. Wenn Sie keinen Wert angeben, ist dies der Standardwert.
      • never: Es ist keine Genehmigung erforderlich.
      • {"never":[<tool_name_1>, <tool_name_2>]}: Sie stellen eine Liste der Tools bereit, die keine Genehmigung erfordern.
      • {"always":[<tool_name_1>, <tool_name_2>]}: Sie stellen eine Liste der Tools bereit, die eine Genehmigung erfordern.
  4. Wenn das Modell versucht, ein Tool in Ihrem MCP-Server mit erforderlicher Genehmigung aufzurufen, erhalten Sie einen Ausführungsstatus von requires_action. requires_action Im Feld erhalten Sie weitere Details dazu, welches Tool auf dem MCP-Server aufgerufen wird, Argumente, die übergeben werden sollen, und call_id den Wert. Überprüfen Sie das Tool und die Argumente, damit Sie eine fundierte Entscheidung zur Genehmigung treffen können.

  5. Übermitteln Sie Ihre Genehmigung an den Agenten, indem Sie approve auf true setzen call_id.

Hosten eines lokalen MCP-Servers

Die Laufzeit des Agentendienstes akzeptiert nur einen Remote-MCP-Serverendpunkt. Wenn Sie Tools von einem lokalen MCP-Server hinzufügen möchten, müssen Sie es auf Azure Container Apps oder Azure Functions selbst hosten, um einen REMOTE-MCP-Serverendpunkt abzurufen. Beachten Sie beim Versuch, lokale MCP-Server in der Cloud zu hosten:

Setup des lokalen MCP-Servers Hosting in Azure Container Apps Hosting in Azure Functions
Transport HTTP POST/GET-Endpunkte erforderlich. HTTP streamfähig erforderlich.
Codeänderungen Containerneubau erforderlich. Azure Functions-spezifische Konfigurationsdateien, die im Stammverzeichnis erforderlich sind.
Authentifizierung Benutzerdefinierte Authentifizierungsimplementierung erforderlich. Nur schlüsselbasiert. OAuth benötigt API-Verwaltung.
Sprache Jede Sprache, die in Linux-Containern ausgeführt wird (Python, Node.js, .NET, TypeScript, Go). nur Python, Node.js, Java, .NET.
Containeranforderungen Nur Linux (linux/amd64). Keine privilegierten Container. Containerisierte Server werden nicht unterstützt.
Abhängigkeiten Alle Abhängigkeiten müssen sich im Containerimage befinden. Abhängigkeiten auf Betriebssystemebene (z. B. Playwright) werden nicht unterstützt.
Staat Nur zustandslos. Nur zustandslos.
UVX/NPX Unterstützt. Nicht unterstützt. npx Startbefehle werden nicht unterstützt.

Bekannte Einschränkungen

  • Kein Streaming-MCP-Tool-Timeout: Nicht-Streaming-MCP-Toolaufrufe weisen einen Timeout von 50 Sekunden auf. Wenn ihr MCP-Server länger als 50 Sekunden dauert, um zu antworten, schlägt der Anruf fehl. Um Timeouts zu vermeiden, stellen Sie sicher, dass Ihr MCP-Server innerhalb dieses Grenzwerts reagiert. Wenn Ihr Anwendungsfall längere Verarbeitungszeiten erfordert, sollten Sie die serverseitige Logik optimieren oder den Vorgang in kleinere Schritte unterteilen.