Windows 365 for Agents MCP server reference (preview)

Important

  • This is a preview feature.
  • Preview features aren't meant for production use and might have restricted functionality. These features are subject to supplemental terms of use, and are available before an official release so that customers can get early access and provide feedback.

Windows 365 for Agents is an MCP server for full operational control of a Windows 365 cloud PC. Use this MCP server to drive a real Windows environment through desktop interaction (mouse, keyboard, screen capture, command execution), browser automation via Microsoft Edge, and semantic UI inspection via Windows UI Automation.

Note

  • Existing connections that use previous versions of Microsoft MCP servers remain supported.
  • For all new connections, use the latest Windows 365 Agents MCP server, which exposes tools across desktop, browser, and accessibility capabilities.
  • Browser automation operates on Microsoft Edge. Edge launches automatically on the first browser tool call. focus_browser can also target Chrome or Firefox, but DOM-level browser tools only operate on the Edge instance.

Overview

Server ID Display name Description
mcp_W365AServer Windows 365 for Agents MCP server Full operational control of a Windows 365 cloud PC, including desktop interaction, browser automation, and UI inspection.

Available tools

mcp_desktop_move_mouse 

Move the cursor to a screen position. Use mcp_desktop_click instead if you intend to click at the destination.  Required parameters: 

  • x: X coordinate in screen pixels
  • y: Y coordinate in screen pixels

mcp_desktop_click 

Click at a position, or at the current cursor location if coordinates are omitted. Supports single-click, double-click, and all five mouse buttons. 

Optional parameters: 

  • x: X coordinate in screen pixels (omit for current position)

  • y: Y coordinate in screen pixels (omit for current position)

  • button: Left, Right, Middle, Forward, or Backward (default Left) 

  • clickCount: 1 = single click, 2 = double click (default 1) 

mcp_desktop_scroll 

Scroll at a position using notch units (not pixels). Three notches is approximately one page. 

Required parameters: 

  • x: Scroll position X

  • y: Scroll position Y

Optional parameters: 

  • deltaX: Horizontal notches, positive = right (default 0)
  • deltaY: Vertical notches, positive = down (default 0)

Note

Values are clamped to the range [-20, 20]. 

mcp_desktop_type_text 

Type text via keyboard simulation. For keyboard shortcuts, use mcp_desktop_press_keys. For web form fields, prefer mcp_browser_type

Required parameters: 

  • text: Text to type

mcp_desktop_press_keys 

Press a key combination simultaneously. Supports modifier keys, function keys, and standard keys. 

Required parameters: 

  • keys: Array of key names to press together (for example, \["ctrl","c"\], \["alt","tab"\], \["ctrl","shift","s"\]

mcp_desktop_take_screenshot 

Capture the full screen or a cropped region as a PNG image (base64-encoded). 

Optional parameters:

  • x: Crop region left edge
  • y: Crop region top edge
  • width: Crop region width
  • height: Crop region height

Note

Provide all four crop parameters together, or omit all four for a full-screen capture. 

mcp_desktop_wait_milliseconds 

Pause execution to allow animations or transitions to complete. Do not use in polling loops—use mcp_browser_wait_for for DOM polling. 

Required parameters: 

  • ms: Wait duration in milliseconds (clamped to [0, 5000])

mcp_browser_navigate 

Navigate to a URL and wait for the page to load. 

Required parameters: 

  • url: Full URL including protocol (for example, https://example.com)

Common use cases 

Open a web form 

  • Call mcp_browser_navigate to open the target page.

Automate a desktop application 

  • Call mcp_desktop_take_screenshot to capture the current state.
  • Call mcp_desktop_click on the element's reported coordinates.
  • Call mcp_desktop_type_text to enter data.
  • Call mcp_desktop_press_keys for shortcuts (for example, ["ctrl","s"] to save).
  • Call mcp_desktop_take_screenshot to verify the result.