Dela via


Exponera och styra en befintlig MCP-server

GÄLLER FÖR: Basic | Basic v2 | Standard | Standard v2 | Premium | Premium v2

Den här artikeln visar hur du använder API Management för att exponera och styra en befintlig MCP-server (Remote Model Context Protocol) – en verktygsserver som finns utanför API Management. Exponera och styra serverns verktyg via API Management så att MCP-klienter kan anropa dem med hjälp av MCP-protokollet.

Viktigt!

  • Den här funktionen är i förhandsversion och har vissa begränsningar.
  • Granska kraven för att få åtkomst till MCP-serverfunktioner.

Några exempelscenarier omfattar:

  • Proxy-LangChain- eller LangServe-verktygsservrar via API Management med autentisering per server och hastighetsbegränsningar.
  • Exponera Azure Logic Apps-baserade verktyg på ett säkert sätt för andrepiloter med hjälp av IP-filtrering och OAuth.
  • Centralisera MCP-serververktyg från Azure Functions och körning med öppen källkod till Azure API Center.
  • Aktivera GitHub Copilot, Claude by Anthropic eller ChatGPT för att interagera säkert med verktyg i hela företaget.

API Management har också stöd för MCP-servrar som är internt exponerade i API Management från hanterade REST-API:er. Mer information finns i Exponera ett REST API som en MCP-server.

Läs mer om:

Begränsningar

Följande begränsningar gäller för den här förhandsversionen. Förhandsversionsfunktioner kan komma att ändras, så kom tillbaka för uppdateringar.

  • Den externa MCP-servern måste överensstämma med MCP-versionen 2025-06-18 eller senare. Servern måste ha stöd för:

    Viktigt!

    Servrar som överensstämmer med äldre MCP-versioner eller som endast använder SSE-transport stöds inte.

  • API Management stöder FUNKTIONER för MCP-serververktyg, men inte MCP-resurser eller uppmaningar.

  • MCP-serverfunktioner stöds inte i API Management-arbetsytor.

Förutsättningar

  • Om du inte redan har en API Management-instans slutför du följande snabbstart: Skapa en Azure API Management-instans.

    • Följande tjänstnivåer stöds för förhandsversion: klassiska Basic, Standard, Premium, Basic v2, Standard v2 eller Premium v2.
    • På den klassiska nivån Basic, Standard eller Premium måste du gå med i gruppen tidiguppdatering av AI Gateway för att få åtkomst till MCP-serverfunktioner. Tillåt upp till 2 timmar för att uppdateringen ska tillämpas.
  • Åtkomst till en extern MCP-kompatibel server (till exempel i Azure Logic Apps, Azure Functions, LangServe eller andra plattformar).

  • Lämpliga autentiseringsuppgifter till MCP-servern (till exempel OAuth 2.0-klientautentiseringsuppgifter eller API-nycklar, beroende på servern) för säker åtkomst.

  • Om du har aktiverat diagnostikloggning via Application Insights eller Azure Monitor i det globala omfånget (Alla API:er) för din API Management-tjänstinstans kontrollerar du att inställningen Antal nyttolastbyte som ska loggas för Klientdelssvar är inställt på 0. Detta förhindrar oavsiktlig loggning av svarskroppar i alla API:er och hjälper till att säkerställa att MCP-servrar fungerar korrekt. Om du vill logga nyttolaster selektivt för specifika API:er konfigurerar du inställningen individuellt i API-omfånget, vilket ger riktad kontroll över svarsloggning.

  • Om du vill testa MCP-servern kan du använda Visual Studio Code med åtkomst till GitHub Copilot.

Exponera en befintlig MCP-server

Följ dessa steg för att exponera en befintlig MCP-server är API Management:

  1. I Azure Portal navigerar du till din API Management-instans.
  2. I den vänstra menyn går du till API:er och väljer MCP-servrar>+ Skapa MCP-server.
  3. Välj Exponera en befintlig MCP-server.
  4. I Serverdelens MCP-server:
    1. Ange den befintliga BAS-URL:en för MCP-servern. Exempel: https://free.blessedness.top/api/mcp för Microsoft Learn MCP-servern
    2. ITransporttyp är Streamable HTTP valt som standard.
  5. I Ny MCP-server:
    1. Ange ett namn på MCP-servern i API Management.
    2. I Bassökväg anger du ett vägprefix för verktyg. Exempel: mytools
    3. Du kan också ange en beskrivning för MCP-servern.
  6. Välj Skapa.

Skärmbild av hur du skapar en MCP-server i portalen.

  • MCP-servern skapas och fjärrserverns åtgärder exponeras som verktyg.
  • MCP-servern visas i fönstret MCP-servrar . Kolumnen Server-URL visar DEN MCP-server-URL som ska anropas för testning eller i ett klientprogram.

Skärmbild av MCP-serverlistan i portalen.

Viktigt!

API Management visar för närvarande inte verktyg från den befintliga MCP-servern. All verktygsregistrering och konfiguration måste göras på den befintliga fjärr-MCP-servern.

Konfigurera principer för MCP-servern

Konfigurera en eller flera API Management-principer för att hantera MCP-servern. Principerna tillämpas på alla API-åtgärder som exponeras som verktyg på MCP-servern och kan användas för att styra åtkomst, autentisering och andra aspekter av verktygen.

Läs mer om att konfigurera principer:

Försiktighet

Använd inte svarstexten med hjälp av variabeln context.Response.Body i MCP-serverprinciper. Detta utlöser svarsbuffertning, vilket stör strömningsbeteendet som krävs av MCP-servrar och kan orsaka fel.

Så här konfigurerar du principer för MCP-servern:

  1. I Azure Portal navigerar du till din API Management-instans.

  2. I den vänstra menyn går du till API:er och väljer MCP-servrar.

  3. Välj en MCP-server i listan.

  4. I den vänstra menyn, under MCP, väljer du Policys.

  5. I principredigeraren lägger du till eller redigerar de principer som du vill tillämpa på MCP-serverns verktyg. Principerna definieras i XML-format. Du kan till exempel lägga till en princip för att begränsa anrop till MCP-serverns verktyg (i det här exemplet 5 anrop per 30 sekunder per klientens IP-adress).

    <rate-limit-by-key calls="5" renewal-period="30" counter-key="@(context.Request.IpAddress)" remaining-calls-variable-name="remainingCallsPerIP" />
    

    Skärmbild av principredigeraren för en MCP-server.

Verifiera och använda MCP-servern

Använd en kompatibel LLM-agent (till exempel GitHub Copilot, Semantic Kernel eller Copilot Studio) eller en testklient (till exempel curl) för att anropa DEN API Management-värdbaserade MCP-slutpunkten. Se till att begäran innehåller lämpliga huvuden eller token och bekräfta lyckad routning och svar från MCP-servern.

Tips/Råd

Om du använder MCP Inspector för att testa en MCP-server som hanteras av API Management rekommenderar vi att du använder version 0.9.0.

Lägg till MCP-servern i Visual Studio Code

I Visual Studio Code använder du GitHub Copilot-chatt i agentläge för att lägga till MCP-servern och använda verktygen. Bakgrund om MCP-servrar i Visual Studio Code finns i Använda MCP-servrar i VS Code.

Så här lägger du till MCP-servern i Visual Studio Code:

  1. Använd MCP: Lägg till serverkommando från kommandopaletten.

  2. När du uppmanas till det väljer du servertypen: HTTP (HTTP eller Server Skickade händelser).

  3. Ange SERVER-URL:en för MCP-servern i API Management. Exempel: https://<apim-service-name>.azure-api.net/<api-name>-mcp/mcp (för MCP-slutpunkt)

  4. Ange ett valfritt server-ID .

  5. Välj om du vill spara konfigurationen i dina arbetsyteinställningar eller användarinställningar.

    • Inställningar för arbetsyta – Serverkonfigurationen sparas i en .vscode/mcp.json fil som endast är tillgänglig på den aktuella arbetsytan.

    • Användarinställningar – Serverkonfigurationen läggs till i den globala settings.json filen och är tillgänglig på alla arbetsytor. Konfigurationen ser ut ungefär så här:

    Skärmbild av MCP-servrar som konfigurerats i Visual Studio Code.

Lägg till fält i JSON-konfigurationen för inställningar, såsom autentiseringsheader. I följande exempel visas konfigurationen för en API Management-prenumerationsnyckel som skickas in i en header som ett indatavärde. Läs mer om konfigurationsformatet

Skärmbild av konfiguration av autentiseringshuvud för en MCP-server

Använda verktyg i agentläge

När du har lagt till en MCP-server i Visual Studio Code kan du använda verktyg i agentläge.

  1. I GitHub Copilot-chatten väljer du Agentläge och väljer knappen Verktyg för att se tillgängliga verktyg.

    Skärmbild av knappen Verktyg i chatten.

  2. Välj ett eller flera verktyg från MCP-servern som ska vara tillgängliga i chatten.

    Skärmbild av val av verktyg i Visual Studio Code.

  3. Ange en uppmaning i chatten för att anropa verktyget. Om du till exempel har valt ett verktyg för att hämta information om en beställning kan du fråga agenten om en beställning.

    Get information for order 2
    

    Välj Fortsätt för att se resultatet. Agenten använder verktyget för att anropa MCP-servern och returnerar resultatet i chatten.

    Skärmbild av chattresultat i Visual Studio Code.

Felsökning och kända problem

Problem Orsak Lösning
401 Unauthorized fel från serverdelen Auktoriseringsrubriken vidarebefordras inte Använd set-header principen för att manuellt bifoga token
API-anrop fungerar i API Management men misslyckas i agenten Felaktig bas-URL eller token saknas Dubbelkolla säkerhetsprinciper och slutpunkter
MCP-serverströmning misslyckas när diagnostikloggar är aktiverade Loggning av svarstext eller åtkomst till svarstext via principen stör MCP-transport Inaktivera loggning av svarstexter i omfånget Alla API:er – se Krav