Dokumentacja poleceń interfejsu wiersza polecenia develop-mcp agenta 365

Zarządzanie serwerami MCP w środowiskach Dataverse. Polecenie to develop-mcp oferuje opcje publikowania, cofania publikacji, rejestracji oraz przyznawania uprawnień agentów serwerom MCP do użycia w środowiskach Dataverse.

Note

TCLI Agenta 365 nie zawiera już poleceń develop-mcp approve, develop-mcp block, i develop-mcp package-mcp-server . Administratorzy dzierżawcy teraz wykonują zatwierdzanie i blokowanie serwera w Microsoft admin center — oczekujące żądania są przeglądane na stronie Requested Agents. CLI nie produkuje już pakietów serwerów MCP do przesyłania do Centrum Administracyjnego; Administratorzy wdrażają i zarządzają serwerami bezpośrednio w centrum administracyjnym.

Wymagana minimalna rola: różni się od podpolecenia

Syntax

a365 develop-mcp [command] [options]

Opcje

Option Description
-v, --verbose Włącz szczegółowe logowanie
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu

develop-mcp evaluate

Oceń swój serwer MCP pod kątem najlepszych praktyk naukowych, aby ocenić gotowość produkcyjną. To narzędzie generuje kompleksowy raport oceny z ocenami, wyjaśnieniami i zadaniami działania. Polecenie to odkrywa narzędzia, które udostępnia serwer MCP, wykonuje zestaw deterministycznych i ocenianych przez AI testów semantycznych względem ich schematów oraz tworzy raport HTML, który ocenia jakość schematu i wymienia priorytetowe zadania do poprawy.

a365 develop-mcp evaluate --server-url <server-url> [--auth-token <auth-token>] [options]

evaluate Opcje

Option Description
-u, --server-url <server-url> Required. Streamowalny URL HTTP endpoint serwera MCP (zazwyczaj kończy się na /mcp).
--auth-token <auth-token> Optional. Potrzebne tylko wtedy, gdy serwer MCP wymaga uwierzytelnienia. Token nosiciela dla serwera. Preferuj A365_MCP_AUTH_TOKEN zmienną środowiskową; token przekazywany w wierszu poleceń jest widoczny w listach procesów i historii powłoki.
-o, --output-dir <output-dir> Katalog list kontrolnych i plików raportowych. Domyślnie przyjmuje aktualny katalog (.).
--eval-engine <eval-engine> Który lokalny agent kodujący ocenia testy semantyczne: auto (domyślnie; spróbuj GitHub Copilot, potem Claude Code), github-copilot, claude-code lub none (pomiń punktację AI i spodziewaj się wstępnie ocenianej listy kontrolnej).
-v, --verbose Włącz pełne rejestrowanie.
-?, -h, --help Pokaż informacje o pomocy i użyciu.

przykłady evaluate

Oceń serwer lokalny za pomocą automatycznego wyboru aparatu:

a365 develop-mcp evaluate --server-url "http://localhost:5000/mcp"

Oceń uwierzytelniony serwer z tokenem dostarczonym za pośrednictwem zmiennej środowiskowej i artefaktami zapisanymi w podfolderze:

$env:A365_MCP_AUTH_TOKEN = "<bearer-token>"
a365 develop-mcp evaluate --server-url "https://my-mcp-server.contoso.com/mcp" --output-dir "./eval"

Wygeneruj tylko listę kontrolną, a następnie oceń ją własnym modelem LLM:

a365 develop-mcp evaluate --server-url "https://my-mcp-server.contoso.com/mcp" --eval-engine none

Wymuś określony aparat oceniania:

a365 develop-mcp evaluate --server-url "http://localhost:5000/mcp" --eval-engine claude-code

evaluate zmiennych środowiskowych

Użyj poniższych zmiennych środowiskowych do uwierzytelniania i opcjonalnie kontroluj, z którego modelu korzysta każdy lokalny silnik punktacji.

Environment variable Purpose
A365_MCP_AUTH_TOKEN Token nosiciela dla serwera MCP, używany, gdy nie przechodzisz --auth-token. Używaj tej zmiennej zamiast flagi, ponieważ pozwala to uniknąć tokena w listach procesów i historii powłoki.
A365_EVAL_COPILOT_MODEL Przepisz model GitHub Copilot. Wymaga dokładnego identyfikatora modelu, takiego jak claude-haiku-4.5.
A365_EVAL_CLAUDE_MODEL Nadpisz model Claude Code. Akceptuje alias modelu (np. haiku) lub pełny identyfikator modelu.

develop-mcp grant-agents-access

Udziel serwerowi MCP z przynoszeniem własnego (BYO) uprawnienia do tożsamości agentów, które go nie mają.

a365 develop-mcp grant-agents-access --mcp-server-name <NAME> --agent-blueprint-id <GUID> [options]

Minimalne wymagane uprawnienia: Administrator globalny (lub inna rola z prawem do tworzenia uprawnień OAuth2 dla całego dzierżawa)

Użyj tego polecenia, aby znaleźć i naprawić tożsamości agentów, które nie mogą wywołać serwera MCP typu bring-your-own (BYO), ponieważ brakuje Tools.ListInvoke.All im do niego uprawnień. Polecenie wymienia instancje agentów określonego blueprintu, którym brakuje uprawnień, a następnie pozwala wybrać, którym je przyznać.

Nazwa serwera MCP rozwiązuje się do aplikacji Microsoft Entra, gdzie - BYO jest dodawana do nazwy. Na przykład ext_Learn1 rozwiązuje się jako ext_Learn1 - BYO. Sam grant jest delegowanym dla dzierżawcyAllPrincipals () uprawnieniami OAuth2 na zasadzie usługi tej aplikacji, więc dotyczy każdej obecnej i przyszłej instancji agenta blueprintu, nie tylko tych wymienionych w czasie działania.

Zazwyczaj nie znasz z góry GUID w blueprintie. Przejście --agent-blueprint-id bez wartości lub nieprawidłowej powoduje wydrukowanie nazw i identyfikatorów blueprintów Microsoft, dzięki czemu można je znaleźć. Passing --help oznacza tę samą listę.

Po zgłoszeniu przez polecenie instancji agentów brakujących uprawnień, wprowadź Enter all , aby przydzielić je każdej pokazywanej instancji, wyświetl listę numerów oddzielonych przecinkami (na przykład 1,3), aby przydzielić ją konkretnym instancjom, lub naciśnij Enter , aby pominąć przyznanie. Przejdź --yes do przyznania każdej instancji bez wypowiedzi, na przykład w skrypcie.

Jeśli więcej niż jedna aplikacja Entra ma tę samą <name> - BYO nazwę wyświetlaną, polecenie wymienia wszystkie dopasowania i pyta, którą użyć zamiast zgadywać.

Polecenie nie korzysta z aplikacji klienckiej skonfigurowanej w .a365.config.json Zamiast tego loguje się jako aplikacja Microsoft Graph Command Line Tools (14d82eec-204b-4c2f-b7e8-296a70dab67e) i żąda następujących delegowanych zakresów Microsoft Graph:

  • Application.Read.All
  • AgentIdentity.Read.All
  • DelegatedPermissionGrant.ReadWrite.All

Za pierwszym uruchomieniem polecenia w tenantzie pojawia się prompt zgody administratora dla tych zakresów. Administrator globalny lub administrator uprzywilejowanej roli musi przydzielić te zakresy aplikacji korporacyjnej Microsoft Graph Command Line Tools. Po uzyskaniu zgody każdy przejazd wymaga tylko jednego zalogowania. Jeśli polecenie nie może uzyskać tokena, komunikat o błędzie nazywa aplikację oraz zakresy, o które polecenie wymagało.

grant-agents-access Opcje

Option Description
--agent-blueprint-id <agent-blueprint-id> ID blueprintu agenta (GUID) dla instancji agentów do sprawdzenia. Jeśli pominiesz tę opcję lub podasz nieprawidłową wartość, polecenie wypisuje nazwy i identyfikatory blueprintów pierwszej strony.
-s, --mcp-server-name <mcp-server-name> Required. Nazwa serwera MCP. Aplikacja Entra rozwiązuje się jako .<name> - BYO
--tenant-id <tenant-id> Identyfikator dzierżawcy usługi Azure AD. Domyślnie przyjmuje obecny kontekst Azure CLI.
-y, --yes Udziel brakujących uprawnień każdej instancji agenta bez wypowiedzi.
--device-code Użyj uwierzytelniania kodem urządzenia zamiast interaktywnego przepływu przeglądarki (brokera WAM na Windows). Używaj, gdy WAM nie może wyświetlić dialogu logowania, na przykład w terminalu wbudowanym lub zdalnym. Otwiera się https://microsoft.com/devicelogin w Twojej przeglądarce.
--dry-run Zgłoś instancje agentów bez udzielenia pozwolenia.
-v, --verbose Włącz szczegółowe logowanie
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu

develop-mcp list-environments

Wyświetl listę wszystkich środowisk Dataverse dostępnych do zarządzania serwerem MCP.

a365 develop-mcp list-environments [options]

To polecenie wyświetla wszystkie środowiska usługi Dataverse, w których można zarządzać serwerami MCP.

list-environments Opcje

Option Description
--dry-run Pokaż, co można zrobić bez wykonywania
-v, --verbose Włącz szczegółowe logowanie
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu

develop-mcp list-servers

Wyświetlanie listy serwerów MCP w określonym środowisku Usługi Dataverse.

a365 develop-mcp list-servers [options]

To polecenie wymienia wszystkie serwery MCP obecnie wdrożone w określonym środowisku Dataverse.

list-servers Opcje

Option Description
-e, --environment-id <environment-id> Identyfikator środowiska Dataverse
--dry-run Pokaż, co można zrobić bez wykonywania
-v, --verbose Włącz szczegółowe logowanie
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu

develop-mcp publish

Publikowanie serwera MCP w środowisku usługi Dataverse.

a365 develop-mcp publish [options]

Użyj tego polecenia, aby opublikować serwer MCP w określonym środowisku Usługi Dataverse.

Important

Opublikowanie serwera MCP nie zatwierdza tego. Publikacja tylko przesyła serwer do twojego tenanta i tworzy oczekujące żądanie zatwierdzenia. Zanim jakikolwiek agent będzie mógł korzystać z serwera, administrator tenanta musi go zatwierdzić na stronie Requested Tools w Centrum administracyjne platformy Microsoft 365. Dopóki administrator nie zatwierdzi żądania, serwer pozostaje niedostępny dla agentów. Gdy polecenie się powiedzie, CLI drukuje przypomnienie, aby poprosić administratora dzierżawcy o zatwierdzenie serwera.

Po publikacji CLI tworzy następujące rejestracje aplikacji Microsoft Entra w Twoim dzierżawie:

App registration Purpose When created
<server-name>-PublicClients Posiada uprawnienia OAuth używane przez hostów klientów (takich jak Visual Studio Code i Microsoft Copilot CLI) do wywoływania opublikowanego serwera MCP. CLI tworzy tę aplikację dla każdego serwera.
<server-name>-A365Proxy Działa jak poufna aplikacja kliencka z tajemnicą klienta. CLI przekazuje dane uwierzytelniające aplikacji do platformy, która wykorzystuje je do stworzenia złącza Power Platform dla serwera. CLI tworzy tę aplikację tylko dla niestandardowych (nie-Dataverse) serwerów MCP. Serwery First-party Dataverse, takie jak msdyn_DataverseMCPServer, pomijają tę aplikację, ponieważ platforma udostępnia im własną aplikację.

Ponieważ polecenie tworzy rejestracje aplikacji, konto uruchamiające CLI musi mieć Application.ReadWrite.All uprawnienia Microsoft Graph. Bez tego pozwolenia nie publish udaje się. Jeśli publikacja się nie powiedzie, CLI usuwa utworzone rejestracje aplikacji. Jeśli cofniesz serwer, usuń te rejestracje aplikacji ręcznie.

W dzierżawcach, które ograniczają czas życia tajemnicy klienta za pomocą polityki appManagementPolicies , używaj --secret-lifetime-months ustawienia czasu życia w ramach limitu dla tajemnicy <server-name>-A365Proxy klienta.

Note

Zapewnij --publisher-name niestandardowe (tworzone przez użytkownika) serwery MCP. Wartość ta jest zapisywana w metadanych deweloperskich opublikowanego pakietu i jest wymagana dla tych serwerów. Jest ignorowany na serwerach własności Microsoft (na przykład msdyn_DataverseMCPServer), które zawsze publikują jako "Microsoft". Gdy go pominiesz, CLI interaktywnie go wywołuje; --yes przejść do publikacji bez promptów w CI lub w scenariuszowych kontekstach.

publish Opcje

Option Description
-e, --environment-id <environment-id> Identyfikator środowiska Dataverse
-s, --server-name <server-name> Nazwa serwera MCP do opublikowania
-a, --alias <alias> Alias serwera MCP
-d, --display-name <display-name> Nazwa wyświetlana serwera MCP
-p, --publisher-name <publisher-name> Nazwa Publisher zapisana w opublikowanych metadanych pakietu. Wymagane dla niestandardowych (stworzonych przez użytkownika) serwerów MCP; ignorowane w przypadku serwerów należących do Microsoft pierwszej strony. Motywowane interaktywnie, gdy pominąłem.
--service-tree-id <service-tree-id> ServiceTree ID dla rejestracji aplikacji Microsoft Entra, które publish tworzą. Wymagane w korporacyjnych dzierżawcach Microsoft.
-l, --secret-lifetime-months <months> Żywotność w miesiącach (1-24) dla sekretu klienta w <server-name>-A365Proxy aplikacji Microsoft Entra. Po pominięciu Microsoft Entra ID stosuje domyślny okres życia około 2 lat. Jeśli polisa najemcy appManagementPolicies wymaga krótszego maksimum, ustaw wartość w tym limicie.
-y, --yes Pomiń interaktywne "Kontynuować z publikacją? (y/N)" confirmation. Zastosowanie w CI lub w kontekstach skryptowanych.
--dry-run Pokaż, co można zrobić bez wykonywania
-v, --verbose Włącz szczegółowe logowanie
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu

develop-mcp unpublish

Cofanie publikowania serwera MCP ze środowiska usługi Dataverse.

a365 develop-mcp unpublish [options]

Użyj tego polecenia, aby usunąć serwer MCP z określonego środowiska Dataverse.

unpublish Opcje

Option Description
-e, --environment-id <environment-id> Identyfikator środowiska Dataverse
-s, --server-name <server-name> Nazwa serwera MCP do cofnięcia publikowania
--dry-run Pokaż, co można zrobić bez wykonywania
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu

develop-mcp register-external-mcp-server

Zarejestruj zewnętrzny serwer MCP z Entra, zewnętrznym OAuth, kluczem API lub bez uwierzytelniania.

a365 develop-mcp register-external-mcp-server [options]

Użyj tego polecenia, aby zarejestrować zewnętrznie hostowany (zewnętrzne) serwer MCP w swoim tenantze. Polecenie tworzy rejestracje aplikacji Microsoft Entra potrzebne platformie, wywołuje platformę Agent 365, aby dodać serwer MCP, oraz konfiguruje URI przekierowania i uprawnienia API na nowych rejestracjach aplikacji.

Nazwa serwera musi zaczynać się od prefiksu ext_ i mieć maksymalnie 20 znaków, na przykład ext_MyServer. Nazwy narzędzi muszą dokładnie odpowiadać nazwam ujawnionym przez zdalny serwer MCP. Niedopasowane nazwy powodują, że wywołania narzędzi nie działają w czasie działania.

Możesz podać parametry na trzy sposoby:

  • Przekażcie je jako opcje w wierszu poleceń.
  • Dostarcz plik JSON z .--input-file Opcje wiersza poleceń nadpisują wartości z pliku. Zobacz register-external-mcp-server-sample.json w szablonach CLI dla struktury plików.
  • Pomiń wymaganą wartość, którą można wywołać interaktywnie.

Po pomyślnej rejestracji poproś administratora dzierżawcy o zatwierdzenie nowego serwera MCP, zanim agenci będą mogli z niego korzystać. Jeśli zarejestrowałeś się przez ExternalOAuth, dodaj też wyświetlany URI przekierowania do swojej zewnętrznej aplikacji IDP.

Important

Jeśli rejestracja nie powiodła się po utworzeniu rejestracji aplikacji Microsoft Entra, aplikacje nie są automatycznie cofane. Usuń je ręcznie w portalu Azure przed ponowną próbą.

register-external-mcp-server Opcje

Niektóre opcje są wymagane tylko dla określonych typów uwierzytelniania, jak opisano w kolumnie opisu.

Option Description
-s, --server-name <server-name> Nazwa serwera MCP. Na przykład musi zaczynać się od ext_ i mieć maksymalnie 20 znaków ext_MyServer
-u, --server-url <server-url> Adres URL zdalnego serwera MCP. Musi być poprawnym adresem HTTP lub HTTPS
-a, --auth-type <auth-type> Typ uwierzytelniania: EntraOAuth, ExternalOAuth, APIKey, lub NoAuth
--publisher <publisher> Nazwa Publisher (używana w metadanych pakietu)
--description <description> Opis serwera (używany w metadanych pakietu)
--tools <tools> Na przykład lista nazw narzędzi oddzielonych przecinkami ujawniona przez ten serwer tool1,tool2,tool3
-f, --input-file <input-file> Ścieżka do pliku JSON z parametrami rejestracyjnymi
--remote-scopes <remote-scopes> Na przykład api://{appId-guid}/{scopeName}dla zdalnego serwera MCP. Używany z EntraOAuth
-t, --tenant-id <tenant-id> Entra tenant ID do rejestracji aplikacji. Domyślne na obecnym najemcy az login
--service-tree-id <service-tree-id> ServiceTree ID dla rejestracji aplikacji Entra. Wymagane w korporacyjnych dzierżawcach Microsoft
-l, --secret-lifetime-months <months> Żywotność w miesiącach (1-24) dla wygenerowanych sekretów klienta w utworzonych aplikacjach Entra. Domyślnie wychodzi 24 miesiące (2 lata). Ustaw wartość mniejszą niż appManagementPolicies limit w Twoim najemcy, jeśli twoja polityka najemcy wymaga krótszego maksimum
--idp-authorization-url <url> Zewnętrzny adres autoryzacji OAuth. Wymagane, gdy --auth-type jest ExternalOAuth
--idp-token-url <url> Zewnętrzny adres URL tokena OAuth. Wymagane, gdy --auth-type jest ExternalOAuth
--idp-scopes <scopes> Zewnętrzne teleskopy OAuth. Wymagane, gdy --auth-type jest ExternalOAuth
--idp-client-id <client-id> Zewnętrzny identyfikator klienta OAuth. Wymagane, gdy --auth-type jest ExternalOAuth
--idp-client-secret <client-secret> Zewnętrzny sekret klienta OAuth. Wymagane, gdy --auth-type jest ExternalOAuth
--api-key-location <location> Lokalizacja klucza API: Header lub Query. Wymagane, gdy --auth-type jest APIKey
--api-key-name <name> Parametr klucza lub nazwa nagłówka API, na przykład X-API-Key lub token. Wymagane, gdy --auth-type jest APIKey
--dry-run Pokaż, co można zrobić bez wykonywania
-v, --verbose Włącz szczegółowe logowanie
-?, -h, --help Pokaż informacje o pomocy i użytkowaniu