Lokales Debuggen von MCP- und API-Plug-Ins

Plug-Ins ermöglichen deklarative Agents in Microsoft 365 Copilot, MCP-Server (Model Context Protocol) oder REST-APIs aufzurufen, um Daten abzurufen und Aufgaben auszuführen. Microsoft 365 Copilot müssen den MCP- oder API-Server über das Internet erreichen. In der Regel hosten Debugtools Debugsitzungen auf localhost (127.0.0.1), auf die nur über den Computer zugegriffen werden kann, auf den das Debugtool ausgeführt wird. Mithilfe eines Reverseproxys, z. B. Entwicklertunnel, können Sie Ihre Debugsitzung im Internet verfügbar machen, um Debugaufrufe von Microsoft 365 Copilot zu aktivieren.

In diesem Artikel erfahren Sie, wie Sie das devtunnel Tool verwenden, um das lokale Debuggen für Ihren MCP-Server oder Ihre API zu aktivieren.

Hinweis

Ihre Debugtools stellen möglicherweise bereits eine Reverseproxylösung bereit. Es wird empfohlen, die Dokumentation für Ihre Entwicklertools zu überprüfen, um dies zu bestätigen. Wenn Sie beispielsweise eine neue API mit dem Microsoft 365 Agents Toolkit erstellt haben, übernimmt das Toolkit die Konfiguration des Reverseproxys für Sie.

Voraussetzungen

  • Die devtunnel AUF dem Computer installierte CLI, auf dem Sie Ihre Debugsitzungen hosten
  • Die von Ihrem Debugtool verwendete HTTP-Portnummer

Erstellen eines persistenten Entwicklungstunnels

Mit devtunnel der CLI können Sie einen persistenten Entwicklungstunnel erstellen– einen Tunnel, den Sie nach Bedarf beenden und starten können, ohne dass sich die gehostete URL ändert. Die Verwendung eines Tunnels mit einer persistenten URL vereinfacht das Debuggen für Plug-Ins, da Sie Ihre deklarativen Agent-App-Pakete nicht mit neuen URLs aktualisieren müssen.

  1. Wenn Sie noch nicht bei der devtunnel CLI angemeldet sind, verwenden Sie devtunnel user login --help , um die verfügbaren Optionen anzuzeigen. Melden Sie sich bei der CLI an, bevor Sie fortfahren.

  2. Erstellen Sie den Tunnel, um anonymen Zugriff zu ermöglichen. Anonymer Zugriff ist erforderlich, um Microsoft 365 Copilot Zugriff auf Ihren Tunnel zu ermöglichen, und steht in keinem Zusammenhang mit allen Authentifizierungen, die für Ihre API erforderlich sind.

    devtunnel create --allow-anonymous
    

    Tipp

    Beim Erstellen eines neuen Tunnels wird der Standardtunnel auf den neu erstellten Tunnel umgestellt. Auf diese Weise können Sie das tunnel-id Argument bei nachfolgenden Befehlen weglassen. Wenn Sie mehrere Tunnel erstellen, müssen Sie möglicherweise das tunnel-id Argument verwenden, um sicherzustellen, dass Sie den erwarteten Tunnel verwenden. Weitere Informationen finden Sie mit dem devtunnel --help Befehl oder unter Dev Tunnels-Befehlszeilenreferenz.

  3. Fügen Sie die http-Portnummer hinzu, die von Ihrem Debugtool verwendet wird. Ersetzen Sie durch <port> Ihre Portnummer, und legen Sie den --protocol Parameter auf https fest, wenn Ihr Debugtool HTTPS für den Port verwendet oder http nicht HTTPS verwendet.

    devtunnel port create --port-number <port> --protocol https
    
  4. Starten Sie den Entwicklungstunnel.

    devtunnel host
    
  5. Kopieren Sie zum ersten Mal die URL mit der Bezeichnung Connect via Browser. Öffnen Sie diese URL in Ihrem Browser, und wählen Sie Weiter aus, um den Tunnel zu aktivieren.

    Hinweis

    Nachdem Sie Weiter ausgewählt haben, zeigt Ihr Browser einen Fehler an. Dies wird erwartet und kann ignoriert werden.

Sobald der Tunnel aktiviert ist, können Sie den Tunnel mit STRG+C beenden. Sie können den Tunnel mit dem devtunnel host host-id Befehl neu starten.

Verwenden des Entwicklungstunnels

Um Ihren Dev-Tunnel zum Debuggen zu verwenden, laden Sie ein App-Paket mit der URL des Entwicklungstunnels anstelle der URL des Servers quer.

Legen Sie die url -Eigenschaft des MCP-Serverspezifikationsobjekts in Ihrem Plug-In-Manifest fest.

"runtimes": [
  {
    "type": "RemoteMCPServer",
    "spec": {
      "url": "<your-dev-tunnel-url>",
    }
  }
]

Wenn Sie agents Toolkit in Visual Studio Code verwenden, um Ihren deklarativen Agent zu verwalten, können Sie der Datei "/env/.env.dev.user " eine Umgebungsvariable mit dem Namen PLUGIN_SERVER_URL hinzufügen und diese anstelle Ihrer Dev Tunnel-URL verwenden. Verwenden Sie den Schritt Bereitstellen im Bereich Lebenszyklus , um Ihren Agent querzuladen. Fügen Sie in Ihrer Datei /env/.env.dev.user Folgendes hinzu:

OPENAPI_SERVER_URL=<your-dev-tunnel-url>

Aktualisieren Sie in Ihrem Plug-In-Manifest die url Eigenschaft:

"runtimes": [
  {
    "type": "RemoteMCPServer",
    "spec": {
      "url": "${{PLUGIN_SERVER_URL}}",
    }
  }
]

Wenn Sie agents Toolkit nicht verwenden, können Sie eine neue APP-Paket-ZIP-Datei generieren und Ihren Agent hochladen.