Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Note
Este artigo descreve recursos usados em agentes ou fluxos de agentes baseados no harness padrão.
Windows 365 for Agents é um servidor MCP que te dá controle operacional total de um PC em nuvem com Windows 365. Use esse servidor MCP para conduzir um ambiente Windows real por meio de interação com desktop (mouse, teclado, captura de tela, execução de comandos), automação do navegador via Microsoft Edge e inspeção semântica da interface via Windows Automação da Interface do Usuário.
Note
A automação do navegador funciona no Microsoft Edge. O Edge inicia automaticamente na primeira chamada de ferramenta do navegador.
focus_browser também pode ser direcionado ao Chrome ou Firefox, mas ferramentas de navegador em nível DOM só funcionam na instância do Edge.
Para saber mais sobre Windows 365 para Agentes, veja Windows 365 para documentação de Agentes.
Visão geral
| ID de servidor | URL no nível do locatário | Nome de exibição | Description |
|---|---|---|---|
mcp_W365ComputerUse |
https://agent365.svc.cloud.microsoft/agents/tenants/{tenantId}/servers/mcp_W365ComputerUse |
servidor MCP do Windows 365 para Agentes | Controle operacional total de um PC em nuvem com Windows 365, incluindo interação com desktop, automação do navegador e inspeção da interface. |
Ferramentas disponíveis
mcp_W365ComputerUse_StartSession
Inicia uma sessão de Uso de Computador do Windows 365, estabelecendo uma conexão com um PC em nuvem e alocando um recurso para PC em nuvem. Retorna o sessionId que pode ser usado para gerenciar a sessão.
Sem parâmetros obrigatórios.
mcp_W365ComputerUse_EndSession
Encerra uma sessão ativa de Uso de Computador do Windows 365 e libera os recursos associados ao PC em nuvem. Passe o sessionId retornado por mcp_W365ComputerUse_StartSession.
Parâmetros exigidos: sessionId
mcp_W365ComputerUse_GetSessionDetails
Retorna metadados de uma sessão de Uso do Computador do Windows 365 identificada por sessionId. Passe o sessionId retornado por mcp_W365ComputerUse_StartSession. Não lista várias sessões.
Parâmetros exigidos: sessionId
move_mouse
Move o cursor para uma posição na tela. Use click em vez disso, se você pretende clicar no destino. Parâmetros requeridos:
- x: Coordenada X em pixels da tela
- y: Coordenada Y nos pixels da tela
clique
Clica em uma posição ou na posição atual do cursor, se as coordenadas forem omitidas. Suporta o clique simples, o duplo clique e os cinco botões do mouse.
Parâmetros opcionais:
- x: Coordenada X nos pixels da tela (omita a posição atual)
- y: Coordenada Y nos pixels da tela (omita a posição atual)
- botão: Esquerda, Direita, Central, Avançar ou Voltar (padrão: Esquerda)
- Contagem de cliques: 1 = clique simples, 2 = clique duplo (padrão 1)
get_cursor_position
Retorna as coordenadas atuais do cursor. Sem parâmetros. Retorna {cursorX, cursorY}.
drag_mouse
Arrasta de uma posição para outra. Útil para mover objetos, redimensionar janelas ou rolar com precisão de pixel. Parâmetros requeridos:
- startX: Coordenada Start X.
- startY: Coordenada Start Y.
- endX: Coordenada do fim X.
- endY: Coordenada Y final. Parâmetros opcionais:
- botão: Esquerda, Direita ou Meio (o padrão é Esquerda)
Rolar a tela
Rola em uma posição usando unidades de entalhe, não pixels. Três entalhes correspondem aproximadamente a uma página.
Parâmetros requeridos:
- x: Posição de rolo X
- y: Posição de rolagem Y
Parâmetros opcionais:
- deltaX: Entalhes horizontais, positivo = direito (padrão 0)
- deltaY: Entalhes verticais, positivo = baixo (padrão 0)
Note
Os valores são fixados na faixa [-20, 20].
type_text
Digita texto simulando a entrada do teclado. Para atalhos de teclado, use press_keys. Para campos de formulário web, use browser_type.
Parâmetros requeridos:
- texto: Texto para digitar.
Parâmetros opcionais:
- usePaste: Cole texto da prancheta em vez de digitar.
press_keys
Pressiona uma combinação de teclas simultaneamente. Suporta teclas modificadoras, teclas de função e teclas padrão.
Parâmetros requeridos:
-
chaves: Array de nomes de chaves para pressionar juntos (por exemplo,
["ctrl","c"],["alt","tab"],["ctrl","shift","s"])
take_screenshot
Captura a tela inteira ou uma região cortada como uma imagem PNG (codificada em base64).
Parâmetros opcionais:
- x: Região de cultivo da borda esquerda
- y: Região de cultivo na borda superior
- largura: Largura da região de cultivo
- altura: Altura da região de cultivo
Note
Forneça os quatro parâmetros de corte juntos, ou omita os quatro para uma captura em tela cheia.
zoom_region
Captura uma região da tela em resolução nativa como uma imagem PNG (codificada base64). Use esse recurso para inspecionar textos pequenos ou elementos densos da interface que são difíceis de ler em uma captura de tela cheia reduzida.
Parâmetros requeridos:
- x: Coordenada X da borda esquerda nos pixels da tela
- y: Coordenada Y da borda superior em pixels da tela
- largura: Largura da região em pixels
- altura: Altura da região em pixels
Note
O tamanho máximo da região é 1920x1080 pixels.
analyze_screen
Executa OCR em toda a tela. Sem parâmetros. Retorna {fullText, averageConfidence, boxes[{text, confidence, x, y, width, height}], width, height}.
obter_tamanho_da_tela
Devolve a resolução da tela. Sem parâmetros. Retorna {width, height}.
list_windows
Lista todas as janelas visíveis com seus títulos, posições e dimensões. Sem parâmetros. Retorna um array de {title, processName, handle, x, y, width, height}.
ativar_janela
Traz uma janela para o primeiro plano usando uma correspondência de título difusa.
Parâmetros requeridos:
- título: Título parcial da janela (subcadeia sem diferenciar maiúsculas de minúsculas)
focus_browser
Concentra uma janela do navegador (Edge, Chrome ou Firefox), opcionalmente filtrada por URL ou título.
Parâmetros opcionais:
- Padrão: URL ou substring de título para corresponder (omito em qualquer janela do navegador)
close_window
Fecha uma janela de forma elegante usando uma correspondência aproximada de título. O sistema protege processos críticos e você não pode fechá-los.
Parâmetros requeridos:
-
título: Título parcial da janela (limiar de correspondência de 80%). Retorna
{matchedTitle, processName, closed}.
redimensionar_janela
Redimensiona, move, maximiza, minimiza ou restaura uma janela usando uma correspondência de título difusa.
Parâmetros requeridos:
- título: Título da janela para corresponder (correspondência difusa insensível a maiúsculas e minúsculas)
-
ação: Ação para executar -
Resize,Move,Maximize,Minimize, ouRestore
Parâmetros opcionais:
-
x: Coordenada X da aresta esquerda (usada com
ResizeouMove) -
y: Coordenada Y da borda superior (usada com
ResizeouMove) -
largura: Largura em pixels (usada com
Resize) -
altura: Altura em pixels (usado com
Resize)
execute_shell_command
Executa um comando shell em um ambiente sandbox. O comando é verificado em relação a uma lista de permissões, e padrões perigosos são bloqueados.
Parâmetros requeridos:
- comando: Comando para executar
Parâmetros opcionais:
-
cwd: Diretório de trabalho. Use cortes para frente (por exemplo,
C:/Users/me/project). - timeoutMs: Tempo limite em milissegundos (padrão 30000, máximo 120000)
Note
- Comandos permitidos: git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, type e notepad.
- Padrões bloqueados incluem metacaracteres de shell (|, ;, &, <, >), expansão
(%VAR%)de variáveis de ambiente, sinalizadores de eval de interpretadores (python -counode -e),git config --global,npm -g, executáveis prefixados por caminho,rm -rf,sudoe comandos de disco ou de sistema. - Os comandos
stdoutestderrcada um se truncam a 32 KB. Para computação arbitrária, useexecute_python_code. O comando retorna{stdout, stderr, exitCode, success, timedOut, resourceLimitsApplied}.
execute_python_code
Executa código Python em um ambiente sandbox com limites de recursos. Essa função é ideal para processamento de dados, cálculos, E/S de arquivos e qualquer computação que vá além de simples comandos de shell.
Parâmetros requeridos:
- code: código Python (máximo de 262.144 caracteres).
Parâmetros opcionais:
- cwd: Diretório de trabalho. Use cortes para frente.
- timeoutMs: Tempo limite em milissegundos (padrão 30000, máximo 120000).
Retorna o mesmo esquema que execute_shell_command.
Note
O sandbox impõe um limite de memória de 512 MB e um tempo limite de 30 segundos.
wait_milliseconds
Pausa a execução para permitir que animações ou transições sejam concluídas. Não use esta função em loops de sondagem. Em vez disso, use browser_wait_for para sondagem do DOM.
Parâmetros requeridos:
- ms: Duração de espera em milissegundos (apertado a [0, 5000])
clipboard_read
Lê o conteúdo atual da prancheta do sistema. Esse comando não exige nenhum parâmetro. Retorna um objeto JSON que descreve o formato da área de transferência e a carga útil, que pode ser um texto ou uma imagem codificada em base64.
clipboard_write
Escreve texto na prancheta do sistema, substituindo o conteúdo atual.
Parâmetros requeridos:
- texto: Texto para escrever na prancheta
Retorna uma confirmação que inclui a contagem de caracteres.
list_processes
Lista processos em execução na sessão atual. Cada entrada inclui o PID, nome do processo, uso de memória, título da janela (se houver) e startTimeTicks. Combine startTimeTicks com kill_process para evitar matar um PID reciclado.
Parâmetros opcionais:
- maxCount: Número máximo de processos a serem retornados (padrão 200)
Retorna um array JSON de objetos de informações do processo.
kill_process
Encerra um processo pelo PID. Forneça em startTime o valor de list_processes para se proteger contra a reciclagem de PID.
Parâmetros requeridos:
-
pid: ID do processo retornado por
list_processes -
startTime: ticks de hora de início do processo retornados por
list_processes
Parâmetros opcionais:
- force: Encerrar à força sem um encerramento normal (o padrão é false)
Retorna um resultado JSON descrevendo o resultado.
iniciar_aplicativo
Inicia um aplicativo gui de um diretório permitido. Use execute_shell_command para comandos de CLI em vez disso.
Parâmetros requeridos:
-
path: Caminho absoluto para o executável. Use cortes para frente (por exemplo,
C:/Program Files/app.exe).
Parâmetros opcionais:
- args: Array de argumentos de linha de comando
Retorna {path, pid}.
get_system_info
Retorna a versão do sistema operacional, CPU, RAM, espaço disponível em disco e resolução de exibição. Sem parâmetros. Retorna um objeto JSON contendo as informações do sistema.
browser_navigate
Navega até uma URL e espera a página carregar.
Parâmetros requeridos:
-
URL: URL completa incluindo protocolo (por exemplo,
https://example.com)
browser_back
Navega de volta no histórico do navegador. Sem parâmetros.
browser_forward
Navega para frente no histórico do navegador. Sem parâmetros.
recarregar_navegador
Recarrega a página atual. Sem parâmetros.
browser_get_url
Retorna a URL da página atual como uma string simples. Sem parâmetros.
browser_get_title
Retorna o título da página atual como uma string simples. Sem parâmetros.
browser_get_text
Retorna o conteúdo do texto da página visível como uma string simples. Sem parâmetros. Reduzido em 512 KB.
browser_get_html
Retorna a fonte HTML da página inteira como uma string simples. Sem parâmetros. Reduzido em 512 KB.
browser_get_page_state
Recupera múltiplos campos de estado de página em uma única chamada. Útil para capturar vários sinais ao mesmo tempo sem emitir chamadas separadas para ferramentas.
Parâmetros requeridos:
-
campos: Array de campos a retornar. Valores permitidos:
url,title,dom,screenshot,tabs
Retorna um objeto JSON contendo apenas os campos solicitados.
browser_click
Clica em um elemento DOM pelo seletor CSS. Mais confiável do que cliques baseados em coordenadas para conteúdo da web.
Parâmetros requeridos:
-
seletor: seletor CSS (por exemplo,
#submit-btnoua.nav-link)
tipo_navegador
Digita texto em um elemento de formulário usando um seletor CSS.
Parâmetros requeridos:
- seletor: Seletor CSS do elemento de entrada.
- texto: Texto para digitar.
browser_query_text
Obtém o conteúdo de texto do primeiro elemento que corresponde a um seletor CSS.
Parâmetros requeridos:
- seletor: seletor de CSS.
navegador_aguardar
Espera que um elemento DOM apareça. Essa função é útil para conteúdo dinâmico que carrega de forma assíncrona.
Parâmetros requeridos:
- seletor: seletor CSS pelo qual aguardar.
Parâmetros opcionais:
- timeoutMs: Tempo limite em milissegundos. O padrão é 5.000 e o máximo é 30.000.
browser_eval_js
Avalia uma expressão JavaScript no contexto da página e retorna o resultado como uma string.
Parâmetros requeridos:
- expression: expressão JavaScript que retorna uma string
Note
Se sua expressão retornar um objeto ou número, converta-o explicitamente em uma string (por exemplo, JSON.stringify(obj) ou .toString()).
browser_list_tabs
Lista todas as abas abertas com seu índice, título e URL. Nenhum parâmetro é necessário. Retorna um array de {index, title, url}.
Parâmetros opcionais:
- tabId: Identificador único de aba
alternar entre abas do navegador
Alterna para uma aba pelo índice.
Parâmetros requeridos:
- tabIndex: índice de aba baseado em 0
Parâmetros opcionais:
- tabId: Identificador único de aba
browser_new_tab
Abre uma nova guia, opcionalmente navegando até uma URL.
Parâmetros opcionais:
- URL: URL para abrir (aba em branco se omitida)
Retorna {index, title, url}.
browser_create_tabs
Abre várias abas ao mesmo tempo. Opcionalmente, traga um deles para o primeiro plano.
Parâmetros requeridos:
- URLs: Array de URLs para abrir, uma aba por URL
Parâmetros opcionais:
- foregroundIndex: Índice da aba para trazer para o primeiro plano após a criação (omita para manter a aba atual focada)
Retorna uma mensagem de confirmação.
browser_close_tab
Fecha uma aba pelo índice.
Parâmetros requeridos:
tabIndex: índice de aba baseado em 0 Parâmetros opcionais:
tabId: Identificador único de aba
captura_de_tela_do_navegador
Captura uma captura de tela PNG somente do visor do navegador (não na tela inteira). Sem parâmetros. Retorna um PNG codificado base64.
selecionar opção no navegador
Seleciona uma ou mais opções em um elemento <select> com base no atributo value.
Parâmetros requeridos:
-
seletor: seletor CSS para o
<select>elemento - valores: Matriz de valor ou valores das opções a serem selecionadas
Retorna uma confirmação com a contagem de opções selecionadas.
navegador_preencher_formulário
Preencha vários campos de formulário em uma única chamada. Cada entrada forma um par {selector, value}. A operação para na primeira falha e informa quais campos foram bem-sucedidos.
Parâmetros requeridos:
-
campos: Matriz de
{selector, value}pares
Retorna uma confirmação com a contagem de campos preenchidos.
browser_drag
Arrasta um elemento de origem para um elemento de destino. Ambos os elementos são identificados pelo seletor CSS.
Parâmetros requeridos:
- sourceSelector: Seletor CSS da fonte de arrasto
- targetSelector: seletor CSS do destino de soltura
navegador_pdf_salvar
Salva a página atual como um arquivo PDF. Caminhos de destino são restritos a %USERPROFILE% ou %TEMP%.
Parâmetros requeridos:
-
filePath: Caminho do arquivo de destino sob
%USERPROFILE%ou%TEMP%. Use cortes para frente.
Retorna uma confirmação incluindo o caminho do arquivo salvo.
browser_handle_dialog
Aceita ou descarta uma caixa de diálogo pendente do navegador (alerta, confirmação, prompt ou pré-carregamento). Retorna "Nenhum diálogo pendente" se nenhum diálogo estiver ativo.
Parâmetros requeridos:
-
ação:
acceptoudismiss
Parâmetros opcionais:
- promptText: Texto para fornecer a um diálogo de prompt (ignorado para alerta e confirmação)
browser_get_cookies
Obtém cookies para a página atual ou para um conjunto especificado de URLs. Os valores dos cookies são sempre omitidos por questões de segurança; nomes, domínios, caminhos e atributos são retornados.
Parâmetros opcionais:
- URLs: Array de URLs para obter cookies (omito na página atual)
Retorna um array de objetos cookie com valores redigidos.
browser_set_cookies
Define cookies no domínio da página atual. Essa ação adiciona ou substitui cookies, mas não limpa cookies existentes.
Parâmetros requeridos:
-
cookies: Variedade de objetos de cookies. Cada entrada requer
nameevalue. Campos opcionais:domain,path,secure,httpOnly,sameSite.
Retorna uma mensagem de confirmação.
browser_execute_batch
Executa várias ações do navegador sequencialmente em uma única chamada. Essa ação para na primeira falha e retorna os resultados coletados até aquele ponto.
Parâmetros requeridos:
-
ações: Matriz de
{action, params}objetos. Ações permitidas:navigate,snapshot,click_ref,type_ref,hover_ref,scroll_ref,keypress_ref,wait_for, .eval_js
Retorna uma matriz de resultados, um por ação executada.
instantâneo_do_navegador
Captura a árvore de acessibilidade da página com IDs de referência estáveis (por exemplo, e5) que correspondem a nós do DOM. Use as referências com browser_click_ref, browser_type_ref, e browser_hover_ref. Referências expiram quando a página navega — refaça um snapshot após a navegação.
Parâmetros opcionais:
- maxDepth: Profundidade máxima da árvore, 1-10 (padrão 5)
- incluiIframes: Inclui iframes de origem cruzada (padrão verdadeiro)
Retorna um objeto JSON contendo o snapshot de acessibilidade e os IDs de referência.
browser_click_ref
Clica em um elemento pelo ID de referência a partir de browser_snapshot. Um teste de detecção verifica se nenhum outro elemento está sobreposto ao elemento de destino. Falha se o snapshot expirar — tire o snapshot novamente nesse caso.
Parâmetros requeridos:
-
snapshotId: ID de snapshot retornado por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós do instantâneo
Parâmetros opcionais:
- botão: Esquerda, Direita ou Central (padrão: Esquerda)
- Contagem de cliques: 1 = clique simples, 2 = clique duplo (padrão 1)
Retorna uma confirmação incluindo as coordenadas clicadas.
browser_type_ref
Digita texto em um elemento usando o ID de referência de browser_snapshot. O elemento é focado primeiro, e o texto existente é limpo por padrão. A operação falha se o snapshot expirar.
Parâmetros requeridos:
-
snapshotId: ID de snapshot retornado por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós do instantâneo - texto: Texto para digitar
Parâmetros opcionais:
- Clear: Limpar o texto existente primeiro (padrão verdadeiro)
Retorna uma confirmação que inclui a contagem de caracteres.
browser_hover_ref
Paira sobre um elemento usando o ID de referência de browser_snapshot. Retorna imediatamente. A operação falhará se a captura instantânea expirar; nesse caso, faça uma nova captura instantânea.
Parâmetros requeridos:
-
snapshotId: ID de snapshot retornado por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós do instantâneo
Retorna uma confirmação incluindo as coordenadas de hover.
get_accessibility_tree
Recupera a árvore de elementos da interface do usuário para a janela de primeiro plano. Cada elemento inclui seu papel, nome, valor e coordenadas de tela.
Parâmetros opcionais:
- maxDepth: Profundidade máxima de travessia da árvore, 1-10 (padrão 3)
- maxElements: Elementos máximos a retornar, 1-2000 (padrão 500)
Retorna uma árvore hierárquica de {role, name, value, x, y, width, height, children[...]}.
browser_keypress_ref
Pressiona uma única tecla em um elemento por ID de referência de browser_snapshot. O elemento recebe foco primeiro. Suporta teclas modificadoras. Falha se o snapshot tiver expirado — refaça o snapshot nesse caso.
Parâmetros requeridos:
-
snapshotId: ID de snapshot retornado por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós do instantâneo -
chave: Nome da chave — por exemplo,
Enter,Escape,Tab,ArrowUp,ArrowDown, ouF1–F12
Parâmetros opcionais:
-
modificadores: Matriz de teclas modificadoras a segurar durante a pressão —
Ctrl,Shift,Alt, ouMeta
Retorna uma mensagem de confirmação.
browser_scroll_ref
Rola um elemento até ficar visível pelo ID da ref de browser_snapshot. Opcionalmente, rola por um delta de pixel dentro do elemento. Falha se o snapshot expirar.
Parâmetros requeridos:
-
snapshotId: ID de snapshot retornado por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós do instantâneo
Parâmetros opcionais:
- deltaX: Delta de rolagem horizontal em pixels (padrão 0)
- deltaY: Delta de rolagem vertical em pixels (padrão 0)
Retorna uma mensagem de confirmação.
browser_set_file_input_ref
Define os arquivos em um elemento de entrada de arquivo pelo ID de referência de browser_snapshot. Os caminhos de arquivo são restritos aos diretórios do usuário Documents, Downloads, Desktop ou %TEMP%.
Parâmetros requeridos:
-
snapshotId: ID de snapshot retornado por
browser_snapshot - ref: Element ref para a entrada do arquivo
- filePaths: Array de caminhos de arquivo a serem enviados
Retorna uma mensagem de confirmação.
find_ui_element
Pesquisa elementos de interface do usuário por conteúdo de texto, função de acessibilidade ou nome (subcadeia de caracteres que não diferencia maiúsculas de minúsculas). Retorna elementos correspondentes com suas coordenadas clicáveis na tela.
Parâmetros opcionais:
- texto: Texto a ser buscado (usado como nome caso o nome seja omitido)
-
função: filtro de função da interface do usuário -
Button,TextBox,CheckBox,MenuItem,ComboBoxe mais - nome: Nome acessível (tem precedência sobre o texto se ambos forem fornecidos)
- windowHandle: Identificador da janela de destino (null = janela em primeiro plano)
Principais recursos
Interação no desktop
- Clique, clique duplo, clique direito e controle do mouse com cinco botões.
- Arrastar e soltar com precisão em nível de pixel.
- Rolagem por cliques (três cliques ≈ uma página).
- Digitação pelo teclado e combinações de teclas de atalho.
- Rastreamento da posição do cursor.
- Detecção de resolução de tela.
Captura de tela e análise
- Capturas de tela cheia ou recortadas em PNG.
- OCR da tela inteira com níveis de confiança por região e caixas delimitadoras.
- Capturas de tela somente da área visível do navegador de conteúdo da web.
Gerenciamento de janelas
- Enumere todas as janelas visíveis com posições e dimensões.
- Ative janelas por correspondência aproximada do título.
- Foque nas janelas do navegador (Edge, Chrome, Firefox) opcionalmente filtradas por URL ou título.
- Fechamento suave da janela com proteção para processos críticos do sistema.
Execução do comando
- Comandos de shell em sandbox com uma lista de permissões (git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, type).
- Execução em sandbox Python de até 262.144 caracteres de código.
- Diretório de trabalho e tempo limite por chamada (máximo de 30 segundos).
- Limites de recursos e lista de bloqueio endurecida contra metacaracteres de shell, sinalizadores do eval, escalonamento de privilégios e operações destrutivas.
Automação de navegador
- Navegar, voltar, avançar, recarregar e condições de espera configuráveis na navegação (
load,networkidle0,networkidle2). - Leia a URL da página, título, texto visível (limite de 512 KB) e HTML completo (limite de 512 KB).
- Recuperação consolidada do estado da página — URL, título, DOM, captura de tela e lista de abas em uma única chamada.
- Clique, digitação, preenchimento de formulário, arrasto e
<select>seleção de opções em nível DOM pelo seletor CSS. - Interação baseada em snapshot de acessibilidade por ID de referência — clique, digitação, pairar, pressionamento de tecla com modificadores, rolagem e upload de arquivo por campo de entrada.
- Espere por elementos dinâmicos com tempo limite configurável, opcionalmente exigindo visibilidade.
- Avalie JavaScript expressões no contexto da página.
- Gerenciamento de múltiplas abas: lista, troca, abrir uma ou várias de uma vez e fechar.
- Inspeção de cookies (valores redigidos) e atribuição ao domínio atual.
- Execução em lote — sequência de múltiplos passos do navegador em uma única chamada, parando na primeira falha.
- Salve a página atual como PDF sob
%USERPROFILE%ou%TEMP%. - Tratamento de diálogo para
alert,confirm,prompt, ebeforeunload. - Roda no Microsoft Edge, é lançado automaticamente no primeiro uso.
Acessibilidade da interface do usuário
- Recupere o Windows Automação da Interface do Usuário tree para a janela em primeiro plano com profundidade e contagem de elementos configuráveis.
- Encontre elementos da interface por texto, função ou nome acessível.
- Retorna coordenadas clicáveis na tela para direcionar com precisão botões, caixas de texto, caixas de seleção, itens de menu e caixas de combo.
Temporização e sincronização
- Use
wait_millisecondspara pausas curtas e únicas (até cinco segundos). - Use
browser_wait_forpara polling em nível DOM (até 30 segundos).
Observações
- Todas as coordenadas estão em pixels da tela com (0,0) no canto superior esquerdo. Coordenadas de
take_screenshot,analyze_screen,find_ui_element, elist_windowstodas compartilham o mesmo espaço de coordenadas. - Um sistema de segurança do cursor está ativo: Se o cursor se mover a menos de cinco pixels de qualquer canto da tela, as operações do mouse são canceladas. Evite mirar nas bordas extremas da tela.
- Operadores de tubos shell (|), pontos e vírgula (;), ampersands (&) e redirecionamento de saída (>, <) são bloqueados. Para transformar a saída do comando, capture-a e processe-a com
execute_python_code. - Se as flags de avaliação do interpretador estiverem bloqueadas ou se
python -c "..."enode -e "..."forem rejeitados, você pode usarexecute_python_codepara código Python ou primeiro gravar o código em um arquivo. - O comando
stdout/stderré truncado a 32 KB cada. Use flags para limitar a saída verbosa (por exemplo,git log --oneline -20) ou redirecione para um arquivo e leia separadamente. - O tempo máximo para
execute_shell_commandeexecute_python_codeé de 30 segundos. Para trabalhos mais longos, divida em etapas menores ou inicie um processo em segundo plano a partir do Python e faça uma pesquisa. - Não existe uma ferramenta dedicada para leitura/gravação de arquivos. Leia arquivos com
execute_shell_commandusando o comandotype. Escreva arquivos comexecute_python_codeusando a I/O de arquivos embutida da Python. A redireção de saída do shell (>, >>) é bloqueada. -
browser_eval_jssempre retorna uma string. Converta objetos ou números explicitamente antes de retornar. - As ferramentas DOM do navegador (
browser_click,browser_type,browser_eval_jse outras) operam apenas na instância Microsoft Edge.focus_browserconsegue colocar em foco janelas do Chrome ou do Firefox, mas as ferramentas de DOM não as têm como alvo. -
take_screenshotrequer os quatro parâmetros de corte (x, y, largura, altura) juntos, ou nenhum para uma captura em tela inteira. -
scrollusa unidades de notch (limitadas ao intervalo de [-20, 20]), não em pixels. Três entalhes correspondem aproximadamente a uma página. -
find_ui_elementrequer pelo menos um destes elementos: texto, função ou nome. Quando tanto texto quanto nome são fornecidos, o nome tem precedência. -
browser_snapshotReferências expiram na navegação. Se uma ferramenta_ref(clicar, digitar, passar o cursor, pressionar uma tecla, rolar ou definir o campo de arquivo) falhar porque o snapshot está desatualizado, capture o snapshot novamente e tente outra vez. -
browser_set_file_input_refaceita apenas caminhos de arquivo nos diretóriosDocuments,Downloads,Desktopou%TEMP%do usuário. Arquivos fora dessas localidades são rejeitados. -
browser_get_cookiessempre retorna os valores dos cookies redigidos. Use-o para inspeção — nomes, domínios, caminhos e flags são retornados na íntegra, mas os valores não são expostos. -
browser_set_cookiesSó adiciona ou sobrescreve cookies. Não apaga os cookies existentes. Para remover um cookie, sobrescreva-o com umexpirescom valor expirado por meio desta ferramenta ou limpe-o na própria página. -
browser_execute_batchpara na primeira ação falhada e retorna apenas os resultados coletados até aquele momento. Ações subsequentes no array não são executadas. As ações em lote permitidas estão limitadas a:navigate,snapshot,click_ref,type_ref,hover_ref,scroll_ref,keypress_ref,wait_foreeval_js. -
browser_create_tabsabre abas na ordem fornecida. SeforegroundIndexfor omitido, o foco permanece na aba atualmente ativa. -
browser_get_page_stateretorna apenas os campos listados nofieldsarray. Solicite apenas o que você precisa – incluirdomouscreenshotpode gerar payloads grandes.
Casos de uso comuns
Preencha um formulário online
- Ligue
browser_navigatepara abrir a página alvo. - Chame
browser_wait_forpara aguardar o carregamento do formulário. - Chame
browser_typepara preencher cada campo pelo seletor CSS. - Ligue
browser_clickpara enviar o formulário. - Chame
browser_wait_forpara esperar pelo elemento de confirmação. - Ligue
browser_get_textpara ler e verificar o resultado.
Automatize um aplicativo de desktop
- Chame
activate_windowpara colocar a aplicação em primeiro plano. - Chame
take_screenshotpara capturar o estado atual. - Ligue
find_ui_elementpara localizar um botão ou campo pelo nome. - Chame
clicknas coordenadas informadas do elemento. - Ligue
type_textpara inserir dados. - Use
press_keyspara atalhos (por exemplo,["ctrl","s"]para salvar). - Ligue
take_screenshotpara verificar o resultado.
Extrair dados de uma página web
- Ligue
browser_navigatepara abrir a página. - Chame
browser_get_textpara extrair conteúdo textual visível. - Chamar
execute_python_codepara analisar e processar os dados extraídos. - Chamar
browser_eval_jspara consultar valores específicos via JavaScript quando extração de texto não for suficiente.
Executar tarefas de desenvolvimento
- Ligue para
execute_shell_commandparagit pull,npm installedotnet build. - Chame
take_screenshotpara capturar a saída da compilação. - Chame
execute_python_codepara analisar logs ou resultados de testes. - Chamar
browser_navigatepara abrir um servidor de desenvolvimento local no navegador. - Chame
browser_screenshotpara capturar a página renderizada.
Ler e gravar arquivos
- Leia um arquivo usando
execute_shell_commandcomtype C:\path\to\file.txt. - Escreva um arquivo usando
execute_python_codecom Pythonopen(...)ewrite(...). - Verifique usando
execute_shell_commandcomdir C:\path\to\output.txt.
Navegue por interfaces complexas com acessibilidade
- Ligue
get_accessibility_treepara entender toda a estrutura da interface. - Chame
find_ui_elementpara encontrar um controle específico (por exemplo,role: "MenuItem",name: "Settings"). - Chame
clickusando as coordenadas reportadas pelo elemento. - Ligue
find_ui_elementnovamente para encontrar o próximo controle no diálogo. - Ligue para
type_textouclickpara interagir com ela.
Mantenha uma sessão de longa duração ativa
- Envie qualquer solicitação MCP ao menos uma vez a cada 30 minutos para evitar a remoção por inatividade.
-
get_screen_sizeé leve e funciona bem como batimentos cardíacos.