Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
- Il s’agit d’une fonctionnalité en version préliminaire.
- Les fonctionnalités en version préliminaire ne sont pas destinées à une utilisation en production et peuvent être restreintes. Ces fonctionnalités sont soumises à des conditions d’utilisation supplémentaires, et sont disponibles avant publication officielle afin que les clients puissent y accéder de façon anticipée et fournir des commentaires.
Windows 365 for Agents est un serveur MCP pour le contrôle opérationnel total d’un PC cloud Windows 365. Utilisez ce serveur MCP pour piloter un environnement Windows réel via l’interaction sur le bureau (souris, clavier, capture d’écran, exécution de commandes), l’automatisation du navigateur via Microsoft Edge, et l’inspection sémantique de l’interface utilisateur via Windows UI Automation.
Note
- Les connexions existantes utilisant les versions précédentes des serveurs MCP de Microsoft restent prises en charge.
- Pour toutes les nouvelles connexions, utilisez le dernier serveur MCP des agents Windows 365, qui expose les outils à travers les capacités de bureau, navigateur et accessibilité.
- L’automatisation des navigateurs fonctionne sur Microsoft Edge. Edge se lance automatiquement dès le premier appel à l’outil du navigateur.
focus_browserpeuvent aussi cibler Chrome ou Firefox, mais les outils de navigateur au niveau DOM ne fonctionnent que sur l’instance Edge.
Pour en savoir plus sur Windows 365 pour les agents, voir Windows 365 pour la documentation des agents.
Overview
| Server ID | Display name | Description |
|---|---|---|
mcp_W365AServer |
Windows 365 pour agents serveur MCP | Contrôle opérationnel complet d’un PC cloud Windows 365, incluant l’interaction sur le bureau, l’automatisation du navigateur et l’inspection de l’interface utilisateur. |
Available tools
mcp_desktop_move_mouse
Déplacez le curseur à une position d’écran. Utilisez-les mcp_desktop_click plutôt si vous comptez cliquer sur la destination.
Required parameters:
- x: Coordonnée X dans les pixels de l’écran
- y: Coordonnée Y dans les pixels de l’écran
mcp_desktop_click
Cliquez sur une position, ou sur la position actuelle du curseur si les coordonnées sont omises. Prend en charge le simple clic, le double-clic et les cinq boutons de la souris.
Optional parameters:
x: coordonnée X dans les pixels de l’écran (omettre la position actuelle)
y: Coordonnée Y dans les pixels de l’écran (omettre la position actuelle)
button: Gauche, Droite, Milieu, Avant ou Arrière (par défaut Gauche)
clickCount: 1 = clic simple, 2 = clic double (par défaut 1)
mcp_desktop_get_cursor_position
Retournez les coordonnées du curseur courantes. No parameters. Returns {cursorX, cursorY}.
mcp_desktop_drag_mouse
Faites glisser d’une position à l’autre. Utile pour déplacer des objets, redimensionner des fenêtres ou faire défiler avec une précision de pixels. Required parameters:
- startX: Coordonnée de départ X.
- startY: Coordonnée Y de départ.
- endX: Fin de la coordonnée X.
- endY: Fin de la coordonnée Y. Optional parameters:
- button: Gauche, Droite ou Milieu (par défaut est Gauche)
mcp_desktop_scroll
Faites défiler à une position en utilisant des unités d’encoche (pas des pixels). Trois encoches correspondent à environ une page.
Required parameters:
x: Position de défilement X
y: Position de défilement Y
Optional parameters:
- deltaX: Encoches horizontales, positif = droite (par défaut 0)
- deltaY: Encoches verticales, positif = bas (par défaut 0)
Note
Les valeurs sont fixées à la plage [-20, 20].
mcp_desktop_type_text
Tapez du texte via une simulation au clavier. Pour les raccourcis clavier, utilisez mcp_desktop_press_keys. Pour les champs de formulaire web, utilisez mcp_browser_type.
Required parameters:
- text: Texte à taper
mcp_desktop_press_keys
Appuyez simultanément sur une combinaison de touches. Prend en compte les touches modificatrices, les touches de fonction et les touches standards.
Required parameters:
-
keys: Tableau de noms de clés à presser ensemble (par exemple,
\["ctrl","c"\],\["alt","tab"\],\["ctrl","shift","s"\])
mcp_desktop_take_screenshot
Capturez l’écran complet ou une région recadrée sous forme d’image PNG (encodée base64).
Optional parameters:
- x: Bord gauche de la région de culture
- y: Bord supérieur de la région de culture
- width: Largeur de la région de culture
- height: Hauteur de la région des cultures
Note
Indiquez les quatre paramètres de recadrage ensemble, ou omettez les quatre pour une capture en plein écran.
mcp_desktop_analyze_screen
Effectuez un OCR sur tout l’écran. No parameters. Retourne {fullText, averageConfidence, boxes[{text, confidence, x, y, width, height}], width, height}.
mcp_desktop_get_screen_size
Retournez la résolution de l’écran. No parameters. Retourne {width, height}.
mcp_desktop_list_windows
Listez toutes les fenêtres visibles avec leurs titres, positions et dimensions. No parameters. Retourne un tableau de {title, processName, handle, x, y, width, height}.
mcp_desktop_activate_window
Mettez une fenêtre au premier plan avec un match de titre flou.
Required parameters:
- titlePattern: Titre partiel de fenêtre (sous-chaîne insensible à la majuscule)
mcp_desktop_focus_browser
Concentrez une fenêtre de navigateur (Edge, Chrome ou Firefox), filtrée éventuellement par URL ou titre.
Optional parameters:
- pattern: URL ou sous-chaîne de titre correspondante (à omettre dans toute fenêtre de navigateur)
mcp_desktop_close_window
Fermer gracieusement une fenêtre par un match de championnat flou. Les processus critiques pour le système sont protégés et ne peuvent pas être fermés.
Required parameters:
-
titlePattern: Titre partiel de la fenêtre (80% seuil de correspondance). Retourne
{matchedTitle, processName, closed}.
mcp_desktop_execute_shell_command
Lance une commande shell dans un environnement en bac à sable. Les commandes sont validées par rapport à une liste de permis et les motifs dangereux sont bloqués.
Required parameters:
- command: Commande d’exécuter
Optional parameters:
- cwd: Annuaire de travail
- timeoutMs: Temps d’attente en millisecondes (par défaut 30000, maximum 30000)
Note
- Commandes autorisées : git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, et type.
- Les motifs bloqués incluent les métacaractères de shell (|, ;, &, <, ), >l’expansion
(%VAR%)des variables d’environnement, les drapeaux d’évaluation de l’interpréteur (python -counode -e),git config --global, ,npm -gles exécutables avec préfixe de chemin,rm -rf,sudo, et les commandes disque/système. -
stdoutetstderrsont chacune tronquées à 32 Ko. À utilisermcp_desktop_execute_python_codepour des calculs arbitraires. Retourne{stdout, stderr, exitCode, success, timedOut, resourceLimitsApplied}.
mcp_desktop_execute_python_code
Exécutez du code Python dans un environnement bac à sable avec des limites de ressources. Idéal pour le traitement de données, les calculs, les entrées/sorties de fichiers et tout calcul dépassant les simples commandes shell.
Required parameters:
- code : code Python (max 262 144 caractères).
Optional parameters:
- cwd: Annuaire de travail
- timeoutMsTemps d’attente en millisecondes (par défaut 30 000, maximum 30 000).
Retourne le même schéma que mcp_desktop_execute_shell_command
mcp_desktop_wait_milliseconds
Mettez l’exécution en pause pour permettre la réalisation des animations ou transitions. Ne pas utiliser dans les boucles de sondage — utiliser mcp_browser_wait_for pour le sondage DOM.
Required parameters:
- ms: Durée d’attente en millisecondes (serrée à [0, 5000])
mcp_browser_navigate
Naviguez vers une URL et attendez que la page se charge.
Required parameters:
-
url: URL complète incluant le protocole (par exemple,
https://example.com)
mcp_browser_back
Retournez dans l’historique du navigateur. No parameters.
mcp_browser_forward
Avancez dans l’historique du navigateur. No parameters.
mcp_browser_reload
Rechargez la page actuelle. No parameters.
mcp_browser_get_url
Retournez l’URL de la page actuelle sous forme de chaîne simple. No parameters.
mcp_browser_get_title
Retournez le titre de la page courant sous forme de chaîne simple. No parameters.
mcp_browser_get_text
Retournez le texte visible de la page sous forme de chaîne de caractères simples. No parameters. Tronqué à 512 Ko.
mcp_browser_get_html
Retournez la source HTML de la page entière sous forme de chaîne simple. No parameters. Tronqué à 512 Ko.
mcp_browser_click
Cliquez sur un élément DOM à côté du sélecteur CSS. Plus fiable que le clic basé sur des coordonnées pour le contenu web.
Required parameters:
-
sélecteur : sélecteur CSS (par exemple,
#submit-btnoua.nav-link)
mcp_browser_type
Tape du texte dans un élément de formulaire avec un sélecteur CSS.
Required parameters:
- selector: CSS sélecteur de l’élément d’entrée.
- text: Texte à taper
mcp_browser_query_text
Faites correspondre le contenu du texte du premier élément à un sélecteur CSS.
Required parameters:
- selector: CSS sélecteur
mcp_browser_wait_for
Attendez qu’un élément DOM apparaisse. Utile pour le contenu dynamique qui se charge de façon asynchrone.
Required parameters:
- selector: CSS sélectionneur à attendre
Optional parameters:
- timeoutMs: Temps d’attente en millisecondes (par défaut 5000, maximum 30000)
mcp_browser_eval_js
Évaluer une JavaScript expression dans le contexte de la page et retourner le résultat sous forme de chaîne.
Required parameters:
- expression: JavaScript expression qui retourne une chaîne
Note
Si votre expression retourne un objet ou un nombre, convertissez-le explicitement en une chaîne (par exemple, JSON.stringify(obj) ou .toString()).
mcp_browser_list_tabs
Listez tous les onglets ouverts avec leur index, title, URL et . No parameters. Retourne un tableau de {index, title, url}.
mcp_browser_switch_tab
Passez à un onglet par index.
Required parameters:
- tabIndex: index de tabulation basé sur 0
mcp_browser_new_tab
Ouvrez un nouvel onglet, en naviguant éventuellement vers une URL.
Optional parameters:
- url: URL à ouvrir (onglet vide si omis)
Retourne {index, title, url}.
mcp_browser_close_tab
Fermez un onglet par index.
Required parameters:
- tabIndex: index de tabulation basé sur 0
mcp_browser_screenshot
Capturez une capture d’écran PNG uniquement de la fenêtre du navigateur (pas en plein écran). No parameters. Retourne un PNG codé en base64.
mcp_accessibility_get_accessibility_tree
Récupérez l’arbre d’éléments de l’interface utilisateur pour la fenêtre au premier plan. Chaque élément inclut son rôle, son nom, sa valeur et ses coordonnées d’écran.
Optional parameters:
- maxDepth: Profondeur maximale de traversée de l’arbre, 1-10 (par défaut 3)
- maxElements: Nombre maximal d’éléments à revenir, 1-2000 (par défaut 500)
Retourne un arbre hiérarchique de {rôle, nom, valeur, x, y, largeur, hauteur, enfants[...]}.
mcp_accessibility_find_ui_element
Recherchez les éléments de l’interface utilisateur par contenu textuel, rôle d’accessibilité ou nom (sous-chaîne insensible aux majuscules). Retourne des éléments correspondants avec leurs coordonnées d’écran cliquables.
Optional parameters:
- text: Texte à rechercher (utilisé comme nom si nom omis du nom)
-
role: filtre de rôle UI —
Button,TextBox,CheckBox,MenuItem,ComboBox, et plus encore - name: Nom accessible (prévaut sur le texte si les deux sont fournis)
- windowHandle: Poignée de fenêtre cible (nul = fenêtre au premier plan)
Note
Au moins un texte, un rôle ou un nom doit être fourni. Retourne un tableau de {role, name, value, x, y, width, height}.
Key features
Desktop interaction
- Clic rapide, double-clic, clic droit et contrôle de souris à cinq boutons.
- Glisser-déposer avec une précision pixelisée.
- Défilement par encoches (trois encoches ≈ une page).
- Clavier clavier et raccourcis multi-touches.
- Suivi de la position du curseur.
- Détection de la résolution d’écran.
Capture d’écran et analyse
- Captures d’écran en plein écran ou recadrées en PNG.
- OCR de l’écran plein écran avec les scores de confiance par région et les boîtes englobantes.
- Captures d’écran uniquement pour le contenu web dans la fenêtre du navigateur.
Window management
- Énumérez toutes les fenêtres visibles avec leurs positions et dimensions.
- Activez Windows par correspondance de titre floue.
- Concentrez-vous sur les fenêtres du navigateur (Edge, Chrome, Firefox) filtrées en option par URL ou titre.
- Fermeture élégante de fenêtre avec protection contre les processus critiques pour le système.
Command execution
- Commandes de shell en mode sandbox avec une liste de permis (git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, type).
- En mode Python en mode bac à sable, l’exécution jusqu’à 262 144 caractères de code.
- Répertoire de travail et contrôle du délai par appel (maximum 30 secondes).
- Limites de ressources et liste de blocage renforcée contre les métacaractères de shell, flags d’évaluation, escalade de privilèges et opérations destructrices.
Browser automation
- Naviguer, reculer, recharger, recharger.
- Lisez l’URL de la page, le titre, le texte visible (limite de 512 Ko) et le HTML complet (limite de 512 Ko).
- Requête de clic, de saisie et de texte au niveau DOM par sélecteur CSS.
- Attendez les éléments dynamiques avec un délai d’expiration configurable.
- Évaluer JavaScript les expressions dans le contexte de la page.
- Gestion multi-onglets : liste, switch, ouverture, fermeture.
- Tourne sur Microsoft Edge, se lance automatiquement dès la première utilisation.
UI accessibility
- Récupérer le Windows UI Automation tree pour la fenêtre au premier plan avec la profondeur et le nombre d’éléments configurables.
- Trouvez les éléments de l’interface utilisateur par texte, rôle ou nom accessible.
- Retourne des coordonnées cliquables à l’écran pour un ciblage précis des boutons, des boîtes de texte, des cases à cocher, des éléments de menu et des combos.
Synchronisation et chronométrage
- Courtes pauses d’un coup (
mcp_desktop_wait_millisecondsmax cinq secondes). - Polling au niveau DOM via
mcp_browser_wait_for(maximum 30 secondes).
Notes
- Toutes les coordonnées sont dans des pixels d’écran avec (0,0) en haut à gauche. Les coordonnées de
mcp_desktop_take_screenshot,mcp_desktop_analyze_screen,mcp_accessibility_find_ui_element, etmcp_desktop_list_windowspartagent toutes le même espace de coordonnées. - Un système de sécurité du curseur est actif : si le curseur se déplace à moins de cinq pixels d’un coin d’écran, les opérations à la souris sont annulées. Évitez de cibler les bords extrêmes de l’écran.
- Les opérateurs de pipe à coquille (|), les points-virgules (;), les esperluettes (&) et la redirection de sortie (>, <) sont bloqués. Pour transformer la sortie de commande, capturez-la et traitez-la avec
mcp_desktop_execute_python_code. - Si les indicateurs d’évaluation de l’interpréteur sont bloqués ou si
python -c "..."etnode -e "..."sont rejetés, vous pouvez utilisermcp_desktop_execute_python_codepour Python code, ou écrire du code dans un fichier en premier. - La commande
stdout/stderrest tronquée à 32 Ko chacune. Utilisez des drapeaux pour limiter la quantité de mots de sortie (par exemple,git log --oneline -20) ou redirigez vers un fichier et lisez-le séparément. - Le temps d’attente maximum pour
mcp_desktop_execute_shell_commandetmcp_desktop_execute_python_codeest de 30 secondes. Pour un travail plus long, divisez en étapes plus petites ou lancez un processus en arrière-plan depuis Python et faites un sondage. - Il n’existe pas d’outil dédié à la lecture/écriture de fichiers. Lire les fichiers avec
mcp_desktop_execute_shell_commanden utilisant la commandetype; écrire des fichiers avecmcp_desktop_execute_python_codeen utilisant l'E/S intégrée de Python. La redirection de sortie de la coque (>, >>) est bloquée. -
mcp_browser_eval_jsOn retourne toujours une corde. Convertir explicitement les objets ou les nombres avant de revenir. - Les outils DOM du navigateur (
mcp_browser_click,mcp_browser_type,mcp_browser_eval_js, etc.) fonctionnent uniquement sur l’instance Microsoft Edge.mcp_desktop_focus_browserpeut focaliser les fenêtres Chrome ou Firefox, mais les outils DOM ne les ciblent pas. -
mcp_desktop_take_screenshotnécessite les quatre paramètres de recadrage (x, y, largeur, hauteur) ensemble, ou aucun pour une capture en plein écran. -
mcp_desktop_scrollUtilise des unités d’encoche (serrées à [-20, 20]), pas des pixels. Trois encoches correspondent à environ une page. -
mcp_accessibility_find_ui_elementnécessite au moins un texte, un rôle ou un nom. Lorsque le texte et le nom sont fournis, le nom a priorité.
Cas d’utilisation courants
Remplissez un formulaire web
- Appelez
mcp_browser_navigatepour ouvrir la page cible. - Appelez
mcp_browser_wait_forpour attendre le chargement du formulaire. - Appelez
mcp_browser_typepour remplir chaque champ par le sélecteur CSS. - Appelez
mcp_browser_clickpour soumettre le formulaire. - Appelez
mcp_browser_wait_forpour attendre l’élément de confirmation. - Appelez
mcp_browser_get_textpour lire et vérifier le résultat.
Automatiser une application de bureau
- Appelez
mcp_desktop_activate_windowpour mettre la candidature au premier plan. - Appelez
mcp_desktop_take_screenshotpour capturer l’état actuel. - Appelez
mcp_accessibility_find_ui_elementpour localiser un bouton ou un champ par nom. - Appelez
mcp_desktop_clickles coordonnées rapportées de l’élément. - Appelez
mcp_desktop_type_textpour saisir des données. - Demandez
mcp_desktop_press_keysdes raccourcis (par exemple, ["ctrl », « s"] pour sauvegarder). - Appelez
mcp_desktop_take_screenshotpour vérifier le résultat.
Extraire des données d’une page web
- Appelez
mcp_browser_navigatepour ouvrir la page. - Appel
mcp_browser_get_textpour extraire le contenu textuel visible. - Appel
mcp_desktop_execute_python_codepour analyser et traiter les données extraites. - Appel
mcp_browser_eval_jspour interroger des valeurs spécifiques via JavaScript lorsque l’extraction de texte ne suffit pas.
Exécuter des tâches de développement
- Appel
mcp_desktop_execute_shell_commandpourgit pull,npm install, etdotnet build. - Appel
mcp_desktop_take_screenshotpour capturer la sortie de la compilation. - Appelez
mcp_desktop_execute_python_codepour analyser des journaux ou des résultats de tests. - Appel
mcp_browser_navigatepour ouvrir un serveur de développement local dans le navigateur. - Appelez
mcp_browser_screenshotpour capturer la page rendue.
Lire et écrire des fichiers
- Lis un fichier avec
mcp_desktop_execute_shell_commanden utilisanttype C:\path\to\file.txt. - Écrivez un fichier avec
mcp_desktop_execute_python_codeen utilisant les Pythonopen(...)etwrite(...). - Vérifiez en
mcp_desktop_execute_shell_commandutilisantdir C:\path\to\output.txt.
Naviguez dans une interface utilisateur complexe avec accessibilité
- Appelez
mcp_accessibility_get_accessibility_treepour comprendre toute la structure de l’interface utilisateur. - Appel
mcp_accessibility_find_ui_elementpour trouver un contrôle spécifique (par exemple, rôle : « MenuItem », nom : « Paramètres »). - Appelez
mcp_desktop_clicken utilisant les coordonnées rapportées par l’élément. - Rappelle
mcp_accessibility_find_ui_elementpour trouver la commande suivante dans la conversation. - Appeler
mcp_desktop_type_textoumcp_desktop_clickinteragir avec.
Gardez une session longue en vie
- Envoyez toute demande MCP au moins une fois toutes les 30 minutes pour éviter l’expulsion inactive.
-
mcp_desktop_get_screen_sizeest léger et fonctionne bien comme battement de cœur.