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.
GILT FÜR: Developer | Basic | Basic v2 | Standard | Standard v2 | Premium | Premium v2
In diesem Artikel wird gezeigt, wie Sie API Management verwenden, um einen vorhandenen MCP-Remoteserver (Model Context Protocol) verfügbar zu machen und zu steuern. Bei einem MCP-Server handelt es sich um einen Toolserver, der außerhalb von API Management gehostet wird. Machen Sie die Tools des Servers über die API-Verwaltung verfügbar und steuern Sie sie, damit MCP-Clients diese mithilfe des MCP-Protokolls aufrufen können.
Beispielszenarios umfassen:
- Leiten Sie LangChain- oder LangServe-Toolserver per Proxy über API Management mit serverbasierter Authentifizierung und serverbasierten Ratenbegrenzungen.
- Stellen Sie Azure Logic Apps-basierte Tools sicher mithilfe von IP-Filterung und OAuth für Kopiloten bereit.
- Zentralisieren Sie MCP-Servertools aus Azure Functions und Open-Source-Laufzeiten in Azure API Center.
- Aktivieren Sie GitHub Copilot, Claude by Anthropic oder ChatGPT, um sicher mit Tools in Ihrem Unternehmen zu interagieren.
API Management unterstützt zudem MCP-Server, die nativ in API Management von verwalteten REST-APIs verfügbar gemacht werden. Weitere Informationen finden Sie unter Verfügbarmachen einer REST-API als MCP-Server.
Weitere Informationen zu:
Einschränkungen
Der externe MCP-Server muss der MCP-Version
2025-06-18oder höher entsprechen. Der Server kann Folgendes unterstützen:- Entweder keine Autorisierungs- oder Autorisierungsprotokolle, die den folgenden Standards entsprechen: https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization#standards-compliance.
- Streambare HTTP- oder SSE-Transporttypen.
Die API-Verwaltung unterstützt derzeit MCP-Servertools, unterstützt jedoch keine MCP-Ressourcen oder -Eingabeaufforderungen.
Die API-Verwaltung unterstützt derzeit keine MCP-Serverfunktionen in Arbeitsbereichen.
Voraussetzungen
Arbeiten Sie die folgende Schnellstartanleitung durch, falls Sie nicht bereits über eine API Management-Instanz verfügen: Erstellen einer Azure API Management-Instanz. Die Instanz muss sich in einer der Dienstebenen befinden, die MCP-Server unterstützen.
Zugriff auf einen externen MCP-kompatiblen Server (z. B. in Azure Logic Apps, Azure Functions, LangServe oder auf anderen Plattformen gehostet)
Geeignete Anmeldeinformationen für den MCP-Server (z. B. OAuth 2.0-Clientanmeldeinformationen oder API-Schlüssel, je nach Server) für den sicheren Zugriff
Wenn Sie die Diagnoseprotokollierung über Application Insights oder Azure Monitor im globalen Bereich (alle APIs) für Ihre API-Verwaltungsinstanz aktivieren, legen Sie die Anzahl der Nutzlastbytes fest, um die Einstellung für die Frontend-Antwort auf 0 zu protokollieren. Diese Einstellung verhindert die unbeabsichtigte Protokollierung von Antworttexten über alle APIs hinweg und trägt dazu bei, das ordnungsgemäße Funktionieren von MCP-Servern sicherzustellen. Um Nutzlasten selektiv für bestimmte APIs zu protokollieren, konfigurieren Sie die Einstellung einzeln im API-Bereich, sodass die gezielte Kontrolle über die Antwortprotokollierung ermöglicht wird.
Um den MCP-Server zu testen, verwenden Sie Visual Studio Code mit Zugriff auf GitHub Copilot oder ein Tool wie MCP Inspector.
Verfügbarmachen eines vorhandenen MCP-Servers
Führen Sie die folgenden Schritte aus, um einen vorhandenen MCP-Server in der API-Verwaltung verfügbar zu machen:
- Wechseln Sie im Azure-Portal zu Ihrer API-Verwaltungsinstanz.
- Wählen Sie im linken Menü unter APIs die Optionen MCP-Server>+ MCP-Server erstellen aus.
- Wählen Sie Vorhandenen MCP-Server verfügbar machen aus.
- Unter Back-End-MCP-Server:
- Geben Sie die vorhandene Basis-URL des MCP-Servers ein. Zum Beispiel
https://learn.microsoft.com/api/mcpfür den Microsoft Learn MCP-Server. - Im Transporttyp ist Streamable HTTP standardmäßig ausgewählt.
- Geben Sie die vorhandene Basis-URL des MCP-Servers ein. Zum Beispiel
- Unter Neuer MCP-Server:
- Geben Sie einen Namen für den MCP-Server in der API-Verwaltung ein.
- Geben Sie unter Basispfad ein Routenpräfix für Tools ein. Beispiel:
mytools. - Geben Sie optional eine Beschreibung für den MCP-Server ein.
- Wählen Sie "Erstellen" aus.
- Der MCP-Server wird erstellt, und die Vorgänge des Remoteservers werden als Tools verfügbar gemacht.
- Der MCP-Server wird im BEREICH "MCP-Server " aufgeführt. In der Spalte Server-URL wird die MCP-Server-URL angezeigt, die zum Testen oder innerhalb einer Clientanwendung aufgerufen werden soll.
Von Bedeutung
Derzeit zeigt API Management keine Tools vom vorhandenen MCP-Server an. Sie müssen alle Tools auf dem vorhandenen Remote-MCP-Server registrieren und konfigurieren.
Konfigurieren von Richtlinien für den MCP-Server
Konfigurieren Sie eine oder mehrere API-Verwaltungsrichtlinien , um den MCP-Server zu verwalten. Die Richtlinien gelten für alle API-Vorgänge, die als Tools auf dem MCP-Server verfügbar gemacht werden. Verwenden Sie diese Richtlinien, um den Zugriff, die Authentifizierung und andere Aspekte der Tools zu steuern.
Weitere Informationen zum Konfigurieren von Richtlinien:
- Richtlinien in Azure API Management
- Transformieren und Schützen Ihrer API
- Festlegen und Bearbeiten von Richtlinien
- Schützen des Zugriffs auf MCP-Server
Vorsicht
Greifen Sie nicht auf den Antworttext zu, indem Sie die context.Response.Body Variable in MCP-Serverrichtlinien verwenden. Dadurch wird die Antwortpufferung ausgelöst, die das für MCP-Server erforderliche Streamingverhalten stört und somit zu Fehlfunktionen führen kann.
Führen Sie die folgenden Schritte aus, um Richtlinien für den MCP-Server zu konfigurieren:
Wechseln Sie im Azure-Portal zu Ihrer API-Verwaltungsinstanz.
Wählen Sie im linken Menü unter APIs die Option MCP-Server aus.
Wählen Sie in der Liste einen MCP-Server aus.
Wählen Sie im linken Menü unter MCP die Option "Richtlinien" aus.
Fügen Sie im Richtlinien-Editor die Richtlinien hinzu, die Sie auf die Tools des MCP-Servers anwenden möchten, oder bearbeiten Sie sie. Definieren Sie die Richtlinien im XML-Format.
Sie können z. B. eine Richtlinie hinzufügen, um Aufrufe an die Tools des MCP-Servers einzuschränken (in diesem Beispiel ein Anruf pro 60 Sekunden pro MCP-Sitzung).
<!-- Rate limit tool calls by Mcp-Session-Id header --> <set-variable name="body" value="@(context.Request.Body.As<string>(preserveContent: true))" /> <choose> <when condition="@( Newtonsoft.Json.Linq.JObject.Parse((string)context.Variables["body"])["method"] != null && Newtonsoft.Json.Linq.JObject.Parse((string)context.Variables["body"])["method"].ToString() == "tools/call" )"> <rate-limit-by-key calls="1" renewal-period="60" counter-key="@( context.Request.Headers.GetValueOrDefault("Mcp-Session-Id", "unknown") )" /> </when> </choose>
Hinweis
Die API-Verwaltung wertet Richtlinien aus, die im globalen Bereich (alle APIs) konfiguriert sind, bevor sie Richtlinien im MCP-Serverbereich auswertet.
Überprüfen und Verwenden des MCP-Servers
Verwenden Sie einen kompatiblen LLM-Agent (z. B. GitHub Copilot, Semantic Kernel oder Copilot Studio) oder einen Testclient (z. B. curl), um den von API Management gehosteten MCP-Endpunkt aufzurufen. Stellen Sie sicher, dass die Anforderung geeignete Header oder Token enthält, und überprüfen Sie das erfolgreiche Routing und die erfolgreiche Antwort vom MCP-Server.
Tipp
Wenn Sie den MCP Inspector verwenden, um einen MCP-Server zu testen, der von der API-Verwaltung verwaltet wird, verwenden Sie Version 0.9.0.
Hinzufügen des MCP-Servers in Visual Studio Code
Verwenden Sie in Visual Studio Code GitHub Copilot Chat im Agent-Modus, um den MCP-Server hinzuzufügen und die Tools zu verwenden. Hintergrundinformationen zu MCP-Servern in Visual Studio Code finden Sie unter Verwenden von MCP-Servern in VS Code.
So fügen Sie den MCP-Server in Visual Studio Code hinzu:
Verwenden Sie den Befehl MCP: Add Server aus der Befehlspalette.
Wenn Sie dazu aufgefordert werden, wählen Sie den Servertyp HTTP (HTTP- oder Server gesendete Ereignisse) aus.
Geben Sie die Server-URL des MCP-Servers in API Management ein. Beispiel:
https://<apim-service-name>.azure-api.net/<api-name>-mcp/mcpfür den MCP-Endpunkt.Geben Sie eine Server-ID Ihrer Wahl ein.
Wählen Sie aus, ob die Konfiguration in Ihren Arbeitsbereichseinstellungen oder Benutzereinstellungen gespeichert werden soll.
Arbeitsbereichseinstellungen – Die Serverkonfiguration wird nur in einer
.vscode/mcp.jsonDatei gespeichert, die nur im aktuellen Arbeitsbereich verfügbar ist.Benutzereinstellungen – Die Serverkonfiguration wird ihrer globalen
settings.jsonDatei hinzugefügt und ist in allen Arbeitsbereichen verfügbar. Die Konfiguration sieht ähnlich wie folgt aus:
Fügen Sie der JSON-Konfiguration Felder für Einstellungen wie den Authentifizierungsheader hinzu. Das folgende Beispiel zeigt die Konfiguration für einen API-Verwaltungsabonnementschlüssel, der in einem Header als Eingabewert übergeben wird. Weitere Informationen zum Konfigurationsformat
Verwenden von Tools im Agentmodus
Nachdem Sie einen MCP-Server in Visual Studio Code hinzugefügt haben, können Sie Tools im Agent-Modus verwenden.
Wählen Sie im GitHub Copilot-Chat den Agent-Modus aus, und wählen Sie die Schaltfläche "Extras " aus, um die verfügbaren Tools anzuzeigen.
Wählen Sie ein oder mehrere Tools vom MCP-Server aus, um im Chat verfügbar zu sein.
Geben Sie im Chat eine Eingabeaufforderung ein, um das Tool aufzurufen. Wenn Sie z. B. ein Tool zum Abrufen von Informationen zu einer Bestellung ausgewählt haben, können Sie den Agenten um eine Bestellung bitten.
Get information for order 2Wählen Sie "Weiter" aus, um die Ergebnisse anzuzeigen. Der Agent verwendet das Tool, um den MCP-Server aufzurufen und die Ergebnisse im Chat zurückgibt.
Problembehandlung und bekannte Probleme
| Problem | Ursache | Lösung |
|---|---|---|
401 Unauthorized-Fehler vom Back-End |
Autorisierungsheader nicht weitergeleitet | Verwenden Sie bei Bedarf die Richtlinie set-header, um Token manuell anzufügen. |
| API-Aufruf erfolgreich in API Management, aber fehlerhaft im Agent | Falsche Basis-URL oder fehlendes Token | Überprüfen von Sicherheitsrichtlinien und Endpunkten |
| Fehler beim MCP-Serverstreaming, wenn Diagnoseprotokolle aktiviert sind | Die Protokollierung des Antworttexts und der Zugriff auf den Antworttext durch Richtlinien beeinträchtigen den MCP-Transport. | Deaktivieren der Protokollierung des Antworttexts im Bereich „Alle APIs“ (siehe Voraussetzungen) |
Verwandte Inhalte
Beispiel: Schützen von MCP-Remoteservern mit Azure API Management (experimentell)
Verwenden der Azure API Management-Erweiterung für VS Code zum Importieren und Verwalten von APIs
Registrieren und Ermitteln von Remote-MCP-Servern im Azure API Center
Verfügbarmachen der REST-API in API Management als MCP-Server