Windows 365 för agenter MCP-serverreferens (förhandsvisning)

Important

  • Det här är en förhandsgranskningsfunktion.
  • Förhandsversionsfunktioner ska inte användas i produktion och funktionerna kan vara begränsade. Dessa funktioner omfattas av kompletterande användningsvillkor och är tillgängliga före en officiell version så att kunderna kan få tidig åtkomst och ge feedback.

Windows 365 för agenter är en MCP-server för full operativ kontroll av en Windows 365 molndator. Använd denna MCP-server för att driva en verklig Windows miljö genom skrivbordsinteraktion (mus, tangentbord, skärmdump, kommandoexekvering), webbläsarautomation via Microsoft Edge och semantisk UI-inspektion via Windows UI Automation.

Note

  • Befintliga anslutningar som använder tidigare versioner av Microsoft MCP-servrar stöds fortfarande.
  • För alla nya anslutningar, använd den senaste Windows 365 Agents MCP-servern, som exponerar verktyg över skrivbord, webbläsare och tillgänglighetsfunktioner.
  • Webbläsarautomatisering fungerar på Microsoft Edge. Edge startar automatiskt vid det första webbläsaranropet. focus_browser kan också rikta in sig på Chrome eller Firefox, men webbläsarverktyg på DOM-nivå fungerar endast på Edge-instansen.

För att lära dig mer om Windows 365 för agenter, se Windows 365 för agentdokumentation.

Overview

Server ID Display name Description
mcp_W365AServer Windows 365 för agenter MCP-server Full operativ kontroll över en Windows 365 molndator, inklusive skrivbordsinteraktion, webbläsarautomation och UI-inspektion.

Available tools

mcp_desktop_move_mouse

Flytta markören till en skärmposition. Använd mcp_desktop_click istället om du tänker klicka på destinationen.  Required parameters:

  • x: X-koordinat i skärmpixlar
  • y: Y-koordinat i skärmpixlar

mcp_desktop_click

Klicka på en position, eller på den aktuella markörplatsen om koordinater utelämnas. Stöder enkelklick, dubbelklick och alla fem musknappar. 

Optional parameters:

  • x: X-koordinat i skärmpixlar (utelämnas för aktuell position)

  • y: Y-koordinat i skärmpixlar (utelämna för aktuell position)

  • button: Vänster, höger, mitten, framåt eller bakåt (standard vänster)

  • clickCount: 1 = enkelklick, 2 = dubbelklick (standard 1)

mcp_desktop_get_cursor_position

Returnera de aktuella markörkoordinaterna. No parameters. Returnerar {cursorX, cursorY}.

mcp_desktop_drag_mouse

Dra från en position till en annan. Användbart för att flytta objekt, ändra storlek på fönster eller pixelprecisa scrollningar. Required parameters:

  • startX: Starta X-koordinat.
  • startY: Starta Y-koordinaten.
  • endX: Slut X-koordinat.
  • endY: Slut Y-koordinat. Optional parameters:
  • button: Vänster, höger eller mitten (standard är vänster)

mcp_desktop_scroll

Scrolla på en position med notch-enheter (inte pixlar). Tre hack är ungefär en sida. 

Required parameters:

  • x: Scrollposition X

  • y: Rullposition Y

Optional parameters:

  • deltaX: Horisontella hack, positiv = höger (standard 0)
  • deltaY: Vertikala hack, positiv = ner (standard 0)

Note

Värdena är fastklämda till intervallet [-20, 20]. 

mcp_desktop_type_text

Skriv text via tangentbordssimulering. För tangentbordsgenvägar, använd mcp_desktop_press_keys. För webbformulärfält, använd mcp_browser_type

Required parameters:

  • text: Text för att skriva

mcp_desktop_press_keys

Tryck på en tangentkombination samtidigt. Stöder modifiertangenter, funktionstangenter och standardtangenter. 

Required parameters:

  • keys: Array av nyckelnamn att trycka tillsammans (till exempel \["ctrl","c"\], \["alt","tab"\], ) \["ctrl","shift","s"\]

mcp_desktop_take_screenshot

Fånga helskärms- eller beskuret område som en PNG-bild (base64-kodad). 

Optional parameters:

  • x: Odregionens vänstra kant
  • y: Crop regions övre kant
  • width: Crop regions bredd
  • height: Grödregionens höjd

Note

Ange alla fyra crop-parametrar tillsammans, eller utelämna alla fyra för en helskärmsbild. 

mcp_desktop_analyze_screen

Utför OCR på hela skärmen. No parameters. Returnerar {fullText, averageConfidence, boxes[{text, confidence, x, y, width, height}], width, height}.

mcp_desktop_get_screen_size

Återställ skärmupplösningen. No parameters. Returnerar {width, height}.

mcp_desktop_list_windows

Lista alla synliga fönster med deras titlar, positioner och dimensioner. No parameters. Returnerar en array av {title, processName, handle, x, y, width, height}.

mcp_desktop_activate_window

Ta fram ett fönster i förgrunden med en fuzzy titelmatch.

Required parameters:

  • titlePattern: Delvis fönstertitel (kasus-insensitiv delsträng)

mcp_desktop_focus_browser

Fokusera på ett webbläsarfönster (Edge, Chrome eller Firefox), valfritt filtrerat efter URL eller titel.

Optional parameters:

  • pattern: URL eller titelundersträng för att matcha (utelämna för alla webbläsarfönster)

mcp_desktop_close_window

Stäng elegant ett fönster med en fuzzig titelmatch. Systemkritiska processer är skyddade och kan inte stängas.

Required parameters:

  • titlePattern: Delvis fönstertitel (80% matchtröskel). Returnerar {matchedTitle, processName, closed}.

mcp_desktop_execute_shell_command

Kör ett shell-kommando i en sandboxad miljö. Kommandon valideras mot en tillåtslista och farliga mönster blockeras.

Required parameters:

  • command: Kommando att utföra

Optional parameters:

  • cwd: Arbetskatalog
  • timeoutMs: Timeout i millisekunder (standard 30000, max 30000)

Note

  • Tillåtna kommandon: git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, och type.
  • Blockerade mönster inkluderar skalmetakaraktärer (|, ;, &, <, ), >miljövariabelexpansion (%VAR%), tolkevalflaggor (python -c eller node -e), git config --global, npm -g, körbara filer med vägprefix, rm -rf, , sudooch disk-/systemkommandon.
  • stdout och stderr är var och en trunkerade med 32 KB. Använd mcp_desktop_execute_python_code för godtyckliga beräkningar. Returnerar {stdout, stderr, exitCode, success, timedOut, resourceLimitsApplied}.

mcp_desktop_execute_python_code

Exekvera Python-kod i en sandboxad miljö med resursbegränsningar. Idealiskt för databehandling, beräkningar, fil-I/O och alla beräkningar som går bortom enkla skalkommandon.

Required parameters:

  • code: Python kod (max 262 144 tecken).

Optional parameters:

  • cwd: Arbetskatalog
  • timeoutMs: Timeout i millisekunder (standard 30000, max 30000).

Returnerar samma schema som mcp_desktop_execute_shell_command

mcp_desktop_wait_milliseconds

Pausa körningen för att låta animationer eller övergångar slutföras. Använd inte i polling loops—använd mcp_browser_wait_for för DOM-polling. 

Required parameters:

  • ms: Väntetid i millisekunder (klämt till [0, 5000])

mcp_browser_navigate

Gå till en URL och vänta på att sidan ska laddas. 

Required parameters:

  • url: Fullständig URL inklusive protokoll (till exempel, https://example.com)

mcp_browser_back

Gå tillbaka i webbläsarhistoriken. No parameters.

mcp_browser_forward

Navigera framåt i webbläsarhistorik. No parameters.

mcp_browser_reload

Ladda om den aktuella sidan. No parameters.

mcp_browser_get_url

Returnera den aktuella sidans URL som en vanlig sträng. No parameters.

mcp_browser_get_title

Returnera den aktuella sidtiteln som en vanlig sträng. No parameters.

mcp_browser_get_text

Returnera det synliga sidtextinnehållet som en vanlig sträng. No parameters. Förkortad till 512 KB.

mcp_browser_get_html

Returnera HTML-källkoden på hela sidan som en vanlig sträng. No parameters. Förkortad till 512 KB.

mcp_browser_click

Klicka på ett DOM-element med CSS-väljaren. Mer pålitligt än koordinatbaserat klickande för webbinnehåll.

Required parameters:

  • selektor: CSS-selektor (till exempel, #submit-btn eller a.nav-link)

mcp_browser_type

Skriv in text i ett formulärelement med CSS-väljaren.

Required parameters:

  • selector: CSS väljare av indataelementet.
  • text: Text för att skriva

mcp_browser_query_text

Få textinnehållet i det första elementet som matchar en CSS-väljare.

Required parameters:

  • selector: CSS selector

mcp_browser_wait_for

Vänta på att ett DOM-element ska dyka upp. Användbart för dynamiskt innehåll som laddas asynkront.

Required parameters:

  • selector: selector CSS att vänta på

Optional parameters:

  • timeoutMs: Timeout i millisekunder (standard 5000, max 30000)

mcp_browser_eval_js

Utvärdera ett JavaScript uttryck i sidkontexten och returnera resultatet som en sträng.

Required parameters:

  • expression: JavaScript uttryck som returnerar en sträng

Note

Om ditt uttryck returnerar ett objekt eller tal, konvertera det explicit till en sträng (till exempel JSON.stringify(obj) eller .toString()).

mcp_browser_list_tabs

Lista alla öppna flikar med deras index, title, och URL. No parameters. Returnerar en array av {index, title, url}.

mcp_browser_switch_tab

Byt till en flik via index.

Required parameters:

  • tabIndex: 0-baserat tabbindex

mcp_browser_new_tab

Öppna en ny flik, eventuellt navigera till en URL.

Optional parameters:

  • url: URL för att öppna (tom flik om den utelämnas)

Returnerar {index, title, url}.

mcp_browser_close_tab

Stäng en flik efter index.

Required parameters:

  • tabIndex: 0-baserat tabbindex

mcp_browser_screenshot

Ta en PNG-skärmdump av endast webbläsarens vyport (inte helskärm). No parameters. Returnerar en base64-kodad PNG.

mcp_accessibility_get_accessibility_tree

Hämta UI-elementträdet för förgrundsfönstret. Varje element innehåller sin roll, namn, värde och skärmkoordinater.

Optional parameters:

  • maxDepth: Maximalt träd-traverseringsdjup, 1-10 (standard 3)
  • maxElements: Maximalt antal element att återvända, 1-2000 (standard 500)

Returnerar ett hierarkiskt träd med {roll, namn, värde, x, y, bredd, höjd, barn[...]}.

mcp_accessibility_find_ui_element

Sök efter UI-element efter textinnehåll, tillgänglighetsroll eller namn (mellanlägeskänslig delsträng). Returnerar matchande element med deras klickbara skärmkoordinater.

Optional parameters:

  • text: Text att söka efter (används som namn om namn utelämnas)
  • role: UI-rollfilter — Button, , TextBoxCheckBox, , MenuItem, ComboBox, och mer
  • name: Tillgängligt namn (har företräde framför text om båda tillhandahålls)
  • windowHandle: Målfönsterhandtag (null = förgrundsfönster)

Note

Minst en av text, roll eller namn måste lämnas. Returnerar en array av {role, name, value, x, y, width, height}.

Key features

Desktop interaction

  • Klick, dubbelklick, högerklick och femknapps muskontroll.
  • Pixelprecisa drag och släpp.
  • Skrattning baserad på notch (tre hack ≈ en sida).
  • Tangentbordsskrivning och kombinationer av genvägar med flera tangenter.
  • Spårning av markörens position.
  • Skärmupplösningsdetektering.

Skärminspelning och analys

  • Helskärms- eller beskurna PNG-skärmdumpar.
  • OCR av helskärm med konfidenspoäng per region och begränsningsrutor.
  • Skärmdumpar endast i webbläsaren för webbinnehåll.

Window management

  • Räkna upp alla synliga fönster med positioner och dimensioner.
  • Aktivera fönster genom fuzzy title match.
  • Fokus-webbläsarfönster (Edge, Chrome, Firefox) filtreras valfritt efter URL eller titel.
  • Graciöst fönster med skydd för systemkritiska processer.

Command execution

  • Sandboxade skalkommandon med tillåtningslista (git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, type).
  • Sandboxad Python körning upp till 262 144 tecken kod.
  • Arbetskatalog och timeout-kontroll per samtal (max 30 sekunder).
  • Resursgränser och härdade blocklistor mot skalmetakaraktärer, utvärderingsflaggor, privilegieeskalering och destruktiva operationer.

Browser automation

  • Navigera, bakåt, framåt, ladda om.
  • Läs sidans URL, titel, synlig text (512 KB max) och full HTML (512 KB cap).
  • DOM-nivå klick-, skriv- och textfråga med CSS-väljare.
  • Vänta på dynamiska element med konfigurerbar timeout.
  • Utvärdera JavaScript uttryck i sidkontexten.
  • Multi-tab-hantering: lista, byt, öppna, stäng.
  • Körs på Microsoft Edge, startas automatiskt vid första användningen.

UI accessibility

  • Hämta Windows UI Automation tree för förgrundsfönstret med konfigurerbart djup och elementantal.
  • Hitta UI-element efter text, roll eller tillgängligt namn.
  • Returnerar klickbara skärmkoordinater för exakt inriktning på knappar, textrutor, kryssrutor, menypunkter och kombinationsrutor.

Tidtagning och synkronisering

  • Korta one-shot-pauser via mcp_desktop_wait_milliseconds (max fem sekunder).
  • DOM-nivå polling via mcp_browser_wait_for (max 30 sekunder).

Notes

  • Alla koordinater finns i skärmpixlar med (0,0) i övre vänstra hörnet. Koordinater från mcp_desktop_take_screenshot, mcp_desktop_analyze_screen, , mcp_accessibility_find_ui_elementoch mcp_desktop_list_windows alla delar samma koordinatrum.
  • En markörsäkerhetsåtgärd är aktiv: Om markören rör sig inom fem pixlar från något skärmhörn avbryts musoperationerna. Undvik att rikta in dig på skärmens ytterkanter.
  • Skalrörsoperatorer (|), semikolon (;), ampersands (&) och utgångsomdirigering (>, <) blockeras. För att transformera kommandoutgång, fånga den och bearbeta den med mcp_desktop_execute_python_code.
  • Om tolkevalflaggor blockeras eller om python -c "..." och node -e "..." avvisas kan du använda mcp_desktop_execute_python_code för Python kod, eller skriva kod till en fil först.
  • Kommandot stdout/stderr är förkortat med 32 KB vardera. Använd flaggor för att begränsa utförlig utdata (till exempel git log --oneline -20) eller omdirigera till en fil och läs den separat.
  • Maximal timeout för mcp_desktop_execute_shell_command och mcp_desktop_execute_python_code är 30 sekunder. För längre arbete, dela upp det i mindre steg eller starta en bakgrundsprocess från Python och poll.
  • Det finns inget dedikerat filläs-/skrivverktyg. Läs filer med mcp_desktop_execute_shell_command med kommandot type; skriva filer med mcp_desktop_execute_python_code med Python inbyggda fil-I/O. Skalutgångsomdirigering (>, >>) blockeras.
  • mcp_browser_eval_js Returnerar alltid en sträng. Konvertera objekt eller nummer explicit innan du returnerar.
  • Webbläsarens DOM-verktyg (mcp_browser_click, mcp_browser_type, mcp_browser_eval_js, etc.) fungerar endast på den Microsoft Edge instansen.  mcp_desktop_focus_browser kan fokusera på Chrome eller Firefox, men DOM-verktyg riktar sig inte mot dem.
  • mcp_desktop_take_screenshot kräver alla fyra crop-parametrar (x, y, bredd, höjd) samtidigt, eller inga för en helskärmsinspelning.
  • mcp_desktop_scroll använder notch-enheter (fastklämda till [-20, 20]), inte pixlar. Tre hack är ungefär en sida.
  • mcp_accessibility_find_ui_element kräver minst en av text, roll eller namn. När både text och namn anges får namn företräde.

Vanliga användningsfall

Fyll i ett webbformulär

  • Ring mcp_browser_navigate för att öppna målsidan.
  • Ring mcp_browser_wait_for och vänta på att formuläret ska laddas.
  • Anrop mcp_browser_type för att fylla varje fält med CSS-selektoren.
  • Ring mcp_browser_click för att skicka in formuläret.
  • Ring mcp_browser_wait_for och vänta på bekräftelseelementet.
  • Ring mcp_browser_get_text för att läsa och verifiera resultatet.

Automatisera en skrivbordsapplikation

  • Ring mcp_desktop_activate_window för att lyfta fram applikationen.
  • Ring mcp_desktop_take_screenshot för att fånga det aktuella tillståndet.
  • Ring mcp_accessibility_find_ui_element för att hitta en knapp eller ett fält med namn.
  • Ring mcp_desktop_click på elementets rapporterade koordinater.
  • Ring mcp_desktop_type_text för att mata in data.
  • Kalla mcp_desktop_press_keys på genvägar (till exempel ["ctrl","s"] för att spara).
  • Ring mcp_desktop_take_screenshot för att verifiera resultatet.

Extrahera data från en webbsida

  • Ring mcp_browser_navigate för att öppna sidan.
  • Anrop mcp_browser_get_text för att extrahera synligt textinnehåll.
  • Anropa mcp_desktop_execute_python_code för att analysera och bearbeta den extraherade datan.
  • Anrop mcp_browser_eval_js för att fråga specifika värden via JavaScript när textextraktion inte räcker.

Kör utvecklingsuppgifter

  • Kalla mcp_desktop_execute_shell_commandgit pull, npm install, och dotnet build.
  • Anrop mcp_desktop_take_screenshot för att fånga byggresultat.
  • Ring mcp_desktop_execute_python_code för att analysera loggar eller testresultat.
  • Anropa mcp_browser_navigate för att öppna en lokal utvecklingsserver i webbläsaren.
  • Anropa mcp_browser_screenshot för att fånga den renderade sidan.

Läs och skriv filer

  • Läs en fil med mcp_desktop_execute_shell_command att använda type C:\path\to\file.txt.
  • Skriv en fil med mcp_desktop_execute_python_code med Python open(...) och write(...).
  • Verifiera med mcp_desktop_execute_shell_command att använda dir C:\path\to\output.txt.
  • Ring mcp_accessibility_get_accessibility_tree för att förstå hela UI-strukturen.
  • Anrop mcp_accessibility_find_ui_element för att hitta en specifik kontroll (till exempel roll: "MenuItem", namn: "Inställningar").
  • Ring mcp_desktop_click med elementets rapporterade koordinater.
  • Ring mcp_accessibility_find_ui_element igen för att hitta nästa kontroll i dialogen.
  • Ring mcp_desktop_type_text eller mcp_desktop_click för att interagera med den.

Håll en långvarig session vid liv

  • Skicka en MCP-begäran minst en gång var 30:e minut för att förhindra viloavhysning.
  • mcp_desktop_get_screen_size är lätt och fungerar bra som en heartbeat.