Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Note
Este artigo descreve as funcionalidades usadas em agentes ou fluxos de agentes alimentados pelo arnês padrão.
O Windows 365 for Agents é um servidor MCP que lhe dá controlo operacional total de um PC cloud com Windows 365. Use este servidor MCP para gerir um ambiente Windows real através da interação com o ambiente de trabalho (rato, teclado, captura de ecrã, execução de comandos), automação do navegador via Microsoft Edge e inspeção semântica da interface via Windows Automatização da Interface de Utilizador.
Note
A automação do navegador funciona no Microsoft Edge. O Edge inicia-se automaticamente na primeira chamada à ferramenta do navegador.
focus_browser também pode direcionar o Chrome ou Firefox, mas as ferramentas de navegador a nível DOM só funcionam na instância do Edge.
Para saber mais sobre Windows 365 para Agentes, consulte Windows 365 para documentação de Agentes.
Overview
| ID do servidor | URL ao nível do inquilino | Nome de exibição | Description |
|---|---|---|---|
mcp_W365ComputerUse |
https://agent365.svc.cloud.microsoft/agents/tenants/{tenantId}/servers/mcp_W365ComputerUse |
Servidor MCP para o Windows 365 para Agentes | Controlo operacional total de um PC na nuvem Windows 365, incluindo interação no ambiente de trabalho, automação do navegador e inspeção da interface. |
Ferramentas disponíveis
mcp_W365ComputerUse_StartSession
Inicia uma sessão de Utilização de Computador do Windows 365, estabelecendo uma ligação a um PC na nuvem e alocando um recurso de PC na nuvem. Devolve o sessionId que pode ser usado para gerir a sessão.
Sem parâmetros obrigatórios.
mcp_W365ComputerUse_EndSession
Termina uma sessão ativa de Utilização de Computador do Windows 365 e liberta os recursos associados ao PC na nuvem. Passe o sessionId retornado por mcp_W365ComputerUse_StartSession.
Parâmetros exigidos: sessionId
mcp_W365ComputerUse_GetSessionDetails
Devolve metadados para uma sessão de Uso de 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 no ecrã. Use click em vez disso se pretende clicar no destino. Parâmetros necessários:
- x: Coordenada X em píxeis do ecrã
- y: Coordenada Y nos píxeis do ecrã
clicar
Clica numa posição, ou na posição atual do cursor se as coordenadas forem omitidas. Suporta um clique, duplo clique e todos os cinco botões do rato.
Parâmetros opcionais:
- x: Coordenada X nos píxeis do ecrã (omitir a posição atual)
- y: Coordenada Y nos píxeis do ecrã (omitir a posição atual)
- botão: Esquerdo, Direito, Central, Avançar ou Retroceder (por defeito Esquerdo)
- Número de cliques: 1 = clique simples, 2 = clique duplo (padrão 1)
get_cursor_position
Devolve as coordenadas atuais do cursor. Sem parâmetros. Retorna {cursorX, cursorY}.
drag_mouse
Arrastar de uma posição para outra. Útil para mover objetos, redimensionar janelas ou fazer scroll com precisão de píxeis. Parâmetros necessários:
- startX: Coordenada Start X.
- startY: Coordenada Y inicial.
- endX: Coordenada do fim X.
- endY: Coordenada Y final. Parâmetros opcionais:
- botão: Esquerda, Direita ou Meio (o padrão é Esquerdo)
Pergaminho
Desloca-se numa posição usando unidades de entalhe, não pixels. Três entalhes correspondem aproximadamente a uma página.
Parâmetros necessários:
- x: Posição de rolo X
- y: Posição de rolo 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 no intervalo [-20, 20].
type_text
Escreve texto simulando a entrada do teclado. Para atalhos de teclado, use press_keys. Para campos de formulário web, use browser_type.
Parâmetros necessários:
- texto: Texto para escrever.
Parâmetros opcionais:
- usePaste: Cola texto a partir da prancheta em vez de escrever.
press_keys
Pressiona uma combinação de teclas simultaneamente. Suporta teclas modificadoras, teclas de função e teclas padrão.
Parâmetros necessários:
-
teclas: Array de nomes de teclas a pressionar juntos (por exemplo,
["ctrl","c"],["alt","tab"],["ctrl","shift","s"])
capturar_ecrã
Captura o ecrã inteiro ou uma região recortada como uma imagem PNG (codificada 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 recorte
- altura: Altura da região de cultivo
Note
Forneça os quatro parâmetros de corte em conjunto, ou omita os quatro para uma captura em ecrã completo.
região_de_zoom
Captura uma região do ecrã em resolução nativa como uma imagem PNG (codificada base64). Use esta funcionalidade para inspecionar texto pequeno ou elementos densos da interface que são difíceis de ler numa captura de ecrã em ecrã inteiro reduzida.
Parâmetros necessários:
- x: Coordenada X da borda esquerda nos pixels do ecrã
- y: Coordenada Y da borda superior nos píxeis do ecrã
- largura: largura da região em píxeis
- altura: Altura da região em píxeis
Note
O tamanho máximo da região é 1920x1080 píxeis.
analisar_ecrã
Realiza OCR em todo o ecrã. Sem parâmetros. Retorna {fullText, averageConfidence, boxes[{text, confidence, x, y, width, height}], width, height}.
get_screen_size
Retorna a resolução do ecrã. Sem parâmetros. Retorna {width, height}.
list_windows
Lista todas as janelas visíveis com os seus títulos, posições e dimensões. Sem parâmetros. Devolve um array de {title, processName, handle, x, y, width, height}.
activate_window
Coloca uma janela em primeiro plano utilizando uma correspondência aproximada do título.
Parâmetros necessários:
- título: Título parcial da janela (subcadeia sem distinção entre maiúsculas e minúsculas)
focus_browser
Foca uma janela do navegador (Edge, Chrome ou Firefox), opcionalmente filtrada por URL ou título.
Parâmetros opcionais:
- padrão: URL ou parte do título a corresponder (omita para corresponder a qualquer janela do navegador)
close_window
Fecha uma janela normalmente através de uma correspondência aproximada do título. O sistema protege processos críticos e não pode fechá-los.
Parâmetros necessários:
-
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 através de uma correspondência aproximada do título.
Parâmetros necessários:
- título: Título da janela a corresponder (correspondência aproximada sem distinção entre 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 aresta superior (usada com
ResizeouMove) -
largura: Largura em píxeis (usada com
Resize) - altura: Altura em pixels (usado com
Resize)
execute_shell_command
Executa um comando shell num ambiente sandbox. O comando é verificado em relação a uma lista de autorizações, e os padrões perigosos são bloqueados.
Parâmetros necessários:
- comando: Comando a executar
Parâmetros opcionais:
-
cwd: Diretório de trabalho. Use barras para a frente (por exemplo,
C:/Users/me/project). - timeoutMs: Timeout 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.
- Os padrões bloqueados incluem metacaracteres de shell (|, ;, &, <, >), expansão de variáveis de ambiente
(%VAR%), opções eval do interpretador (python -counode -e),git config --global,npm -g, executáveis prefixados por caminho,rm -rf,sudoe comandos de disco ou de sistema. - Os elementos
stdoutestderrdo comando são cada um truncados 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 num ambiente sandbox com limites de recursos. Esta função é ideal para processamento de dados, cálculos, I/O de ficheiros e qualquer cálculo que vá além de simples comandos de shell.
Parâmetros necessários:
- código: código Python (máximo 262.144 caracteres).
Parâmetros opcionais:
- cwd: Diretório de trabalho. Usa cortes para a frente.
- timeoutMs: Timeout em milissegundos (padrão 30000, máximo 120000).
Devolve o mesmo esquema que execute_shell_command.
Note
O sandbox impõe um limite de memória de 512 MB e um timeout de 30 segundos.
wait_milliseconds
Pausa a execução para permitir a conclusão de animações ou transições. Não uses esta função em loops de sondagem. Em vez disso, use browser_wait_for para sondagens do DOM.
Parâmetros necessários:
- ms: Duração de espera em milissegundos (apertado a [0, 5000])
clipboard_read
Lê o conteúdo atual da prancheta do sistema. Este comando não requer parâmetros. Devolve um objeto JSON que descreve o formato da área de transferência e a carga útil, que pode ser uma cadeia de texto ou uma imagem codificada em base64.
clipboard_write
Escreve texto na prancheta do sistema, substituindo o conteúdo atual.
Parâmetros necessários:
- texto: Texto para escrever na prancheta
Devolve 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, utilização de memória, título da janela (se existir) e startTimeTicks. Combina startTimeTicks com kill_process para evitar matar um PID reciclado.
Parâmetros opcionais:
- maxCount: Número máximo de processos a devolver (padrão 200)
Devolve um array JSON de objetos info de processo.
terminar_processo
Termina um processo por PID. Indique o valor de startTime a partir de list_processes para proteger contra a reciclagem de PID.
Parâmetros necessários:
-
pid: ID do processo devolvido por
list_processes -
startTime: Ticks do tempo de início do processo devolvidos por
list_processes
Parâmetros opcionais:
- force: Terminar à força sem um encerramento normal (predefinição: falso)
Devolve um resultado JSON que descreve o resultado.
iniciar_aplicação
Inicia uma aplicação GUI a partir de um diretório permitido. Usa execute_shell_command para comandos de CLI em vez disso.
Parâmetros necessários:
-
path: Caminho absoluto para o executável. Use barras para a frente (por exemplo,
C:/Program Files/app.exe).
Parâmetros opcionais:
- args: Array de argumentos de linha de comandos
Retorna {path, pid}.
get_system_info
Devolve a versão do sistema operativo, CPU, RAM, espaço disponível em disco e resolução de visualização. Sem parâmetros. Devolve um objeto JSON contendo a informação do sistema.
navegador_navegar
Navega até uma URL e espera que a página carregue.
Parâmetros necessários:
-
URL: URL completo incluindo protocolo (por exemplo,
https://example.com)
browser_back
Navega no histórico do navegador. Sem parâmetros.
navegador_avançar
Navega para a frente no histórico do navegador. Sem parâmetros.
browser_reload
Recarrega a página atual. Sem parâmetros.
browser_get_url
Devolve a URL da página atual como uma string simples. Sem parâmetros.
browser_get_title
Devolve o título da página atual como uma cadeia simples. Sem parâmetros.
browser_get_text
Devolve o texto visível da página como uma cadeia simples. Sem parâmetros. Reduzido a 512 KB.
browser_get_html
Devolve a fonte HTML da página completa como uma string simples. Sem parâmetros. Reduzido a 512 KB.
browser_get_page_state
Recupera múltiplos campos de estado de página numa única chamada. Útil para captar vários sinais ao mesmo tempo sem emitir chamadas separadas para ferramentas.
Parâmetros necessários:
-
campos: Array de campos a devolver. Valores permitidos:
url,title,dom,screenshot,tabs
Devolve um objeto JSON contendo apenas os campos solicitados.
browser_click
Clica num elemento DOM através do seletor CSS. Mais fiável do que clicar com base em coordenadas para conteúdo web.
Parâmetros necessários:
-
seletor: seletor CSS (por exemplo,
#submit-btnoua.nav-link)
tipo_de_navegador
Digita texto num elemento de formulário usando um seletor CSS.
Parâmetros necessários:
- seletor: Seletor CSS do elemento de entrada.
- texto: Texto para escrever.
browser_query_text
Obtém o conteúdo de texto do primeiro elemento que corresponde a um seletor CSS.
Parâmetros necessários:
- selector: um selector CSS.
browser_wait_for
Espera que apareça um elemento DOM. Esta função é útil para conteúdos dinâmicos que carregam de forma assíncrona.
Parâmetros necessários:
- selector: seletor CSS pelo qual se deve esperar.
Parâmetros opcionais:
- timeoutMs: Tempo de espera em milissegundos. O valor padrão é 5.000 e o máximo é 30.000.
browser_eval_js
Avalia uma expressão JavaScript no contexto da página e devolve o resultado como uma cadeia.
Parâmetros necessários:
- expression: expressão JavaScript que devolve uma cadeia de caracteres
Note
Se a sua expressão devolver um objeto ou número, converta-o explicitamente para uma cadeia (por exemplo, JSON.stringify(obj) ou .toString()).
browser_list_tabs
Lista todos os separadores abertos com o seu índice, título e URL. Nenhum parâmetro necessário. Devolve um array de {index, title, url}.
Parâmetros opcionais:
- tabId: Identificador único do separador
browser_switch_tab
Muda para uma aba pelo índice.
Parâmetros necessários:
- tabIndex: índice de tabulação baseado em 0
Parâmetros opcionais:
- tabId: Identificador único do separador
browser_new_tab
Abre um novo separador, opcionalmente navegando até a uma URL.
Parâmetros opcionais:
- URL: URL para abrir (separador em branco se omitido)
Retorna {index, title, url}.
browser_create_tabs
Abre vários separadores ao mesmo tempo. Opcionalmente, traz um deles para o primeiro plano.
Parâmetros necessários:
- urls: lista de URLs a abrir, um separador por URL
Parâmetros opcionais:
- foregroundIndex: Índice do separador a trazer para o primeiro plano após a criação (omitir para manter o separador atual focado)
Responde com uma mensagem de confirmação.
browser_close_tab
Fecha um separador através do índice.
Parâmetros necessários:
tabIndex: índice de tabulação baseado em 0 Parâmetros opcionais:
tabId: Identificador único do separador
captura de ecrã do navegador
Captura uma captura de ecrã em PNG apenas da viewport do navegador (não do ecrã inteiro). Sem parâmetros. Devolve um PNG codificado base64.
browser_select_option
Seleciona uma ou mais opções num <select> elemento pelo seu value atributo.
Parâmetros necessários:
-
seletor: Seletor CSS para o elemento
<select> - valores: Matriz com o valor ou os valores das opções a selecionar
Devolve uma confirmação com a contagem das opções selecionadas.
navegador_preencher_formulário
Preencha vários campos de formulário numa única chamada. Cada entrada consiste num par {selector, value}. A operação termina na primeira falha e reporta quais os campos que tiveram sucesso.
Parâmetros necessários:
-
campos: Matriz de
{selector, value}pares
Devolve uma confirmação com a contagem de campos preenchidos.
browser_drag
Arrasta um elemento de origem para um elemento alvo. Ambos os elementos são identificados pelo seletor CSS.
Parâmetros necessários:
- sourceSelector: Seletor CSS da fonte de arrasto
- targetSelector: seletor CSS do destino de largada
browser_pdf_save
Guarda a página atual como ficheiro PDF. Os caminhos de destino são restritos a %USERPROFILE% ou %TEMP%.
Parâmetros necessários:
-
filePath: Caminho do ficheiro de destino sob
%USERPROFILE%ou%TEMP%. Usa cortes para a frente.
Devolve uma confirmação incluindo o caminho do ficheiro guardado.
browser_handle_dialog
Aceita ou ignora uma caixa de diálogo pendente do navegador (alerta, confirmação, pedido de introdução de dados ou beforeunload). Devolve "Nenhum diálogo pendente" se não houver diálogo ativo.
Parâmetros necessários:
-
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
Recebe cookies para a página atual, ou para um conjunto específico de URLs. Os valores dos cookies são sempre ocultados por motivos de segurança; os nomes, os domínios, os caminhos e os sinalizadores são devolvidos.
Parâmetros opcionais:
- urls: Matriz de URLs para obter cookies (omitir no caso da página atual)
Devolve um array de objetos de cookies com valores censurados.
browser_set_cookies
Define cookies no domínio da página atual. Esta ação adiciona ou sobrescreve cookies, mas não apaga os cookies existentes.
Parâmetros necessários:
-
cookies: Conjunto de objetos de cookies. Cada entrada requer
nameevalue. Campos opcionais:domain,path,secure,httpOnly,sameSite.
Responde com uma mensagem de confirmação.
browser_execute_batch
Executa múltiplas ações do navegador sequencialmente numa única chamada. Esta ação para na primeira falha e devolve os resultados recolhidos até esse ponto.
Parâmetros necessários:
-
ações: Conjunto de
{action, params}objetos. Ações permitidas:navigate,snapshot,click_ref,type_ref,hover_ref,scroll_ref,keypress_ref,wait_for, .eval_js
Devolve um conjunto 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 aos nós do DOM. Use as referências com browser_click_ref, browser_type_ref, e browser_hover_ref. As referências expiram quando a página muda—capture novamente após a navegação.
Parâmetros opcionais:
- maxDepth: Profundidade máxima da árvore, 1-10 (padrão 5)
- includeIframes: Inclui iframes de origem cruzada (predefinido verdadeiro)
Devolve um objeto JSON contendo o snapshot de acessibilidade e os IDs de referência.
browser_click_ref
Clica num elemento através do ID de referência de browser_snapshot. Um teste de acerto verifica que nenhum outro elemento sobrepõe o alvo. Falha se o snapshot expirar — volte a fazer o snapshot nesse caso.
Parâmetros necessários:
-
snapshotId: ID de snapshot devolvido por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós da captura instantânea
Parâmetros opcionais:
- botão: Esquerdo, Direito ou Central (predefinido: Esquerdo)
- Número de cliques: 1 = clique simples, 2 = clique duplo (padrão 1)
Devolve uma confirmação incluindo as coordenadas clicadas.
browser_type_ref
Digita texto num elemento usando o ID de referência de browser_snapshot. O elemento recebe primeiro o foco, e o texto existente é apagado por defeito. A operação falha se o snapshot expirar.
Parâmetros necessários:
-
snapshotId: ID de snapshot devolvido por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós da captura instantânea - texto: Texto para escrever
Parâmetros opcionais:
- Limpar: Limpa primeiro o texto existente (predefinido como verdadeiro)
Devolve 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. Regressa imediatamente. A operação falha se o snapshot expirar – nesse caso, volta a tirá-lo.
Parâmetros necessários:
-
snapshotId: ID de snapshot devolvido por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós da captura instantânea
Devolve uma confirmação incluindo as coordenadas de hover.
get_accessibility_tree
Recupera a árvore de elementos UI para a janela em primeiro plano. Cada elemento inclui o seu papel, nome, valor e coordenadas de ecrã.
Parâmetros opcionais:
- maxDepth: Profundidade máxima de travessia na árvore, 1-10 (por defeito 3)
- maxElements: Elementos máximos a devolver, 1-2000 (padrão 500)
Devolve uma árvore hierárquica de {papel, nome, valor, x, y, largura, altura, filhos[...]}.
browser_keypress_ref
Prime uma única tecla num elemento utilizando o ID de referência de browser_snapshot. O elemento é focado primeiro. Suporta teclas modificadoras. Falha se o instantâneo tiver expirado — nesse caso, volte a tirar o instantâneo.
Parâmetros necessários:
-
snapshotId: ID de snapshot devolvido por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós da captura instantânea -
chave: Nome da chave — por exemplo,
Enter,Escape,Tab,ArrowUpArrowDown, , ouF1–F12
Parâmetros opcionais:
-
modificadores: Conjunto de teclas modificadoras a manter pressionadas durante a pressão —
Ctrl,Shift,Alt, ouMeta
Responde com uma mensagem de confirmação.
browser_scroll_ref
Desloca um elemento até ficar visível através do ID de referência de browser_snapshot. Opcionalmente, desloca-se por uma delta de píxeis dentro do elemento. Falha se o snapshot expirar.
Parâmetros necessários:
-
snapshotId: ID de snapshot devolvido por
browser_snapshot -
ref: referência do elemento (por exemplo,
e5) dos nós da captura instantânea
Parâmetros opcionais:
- deltaX: Deslocamento horizontal em píxeis (predefinição: 0)
- deltaY: Delta de scroll vertical nos pixels (por defeito 0)
Responde com uma mensagem de confirmação.
browser_set_file_input_ref
Define os ficheiros num elemento de entrada de ficheiros através do ID de referência de browser_snapshot. Os caminhos dos ficheiros estão limitados aos diretórios Documents, Downloads, Desktop ou %TEMP% do utilizador.
Parâmetros necessários:
-
snapshotId: ID de snapshot devolvido por
browser_snapshot - ref: Element ref para a entrada do ficheiro
- filePaths: Array de caminhos de ficheiros a carregar
Responde com uma mensagem de confirmação.
find_ui_element
Procura elementos da interface por conteúdo textual, papel de acessibilidade ou nome (subcadeia sem distinção entre maiúsculas e minúsculas). Retorna os elementos coincidentes e as respetivas coordenadas clicáveis no ecrã.
Parâmetros opcionais:
- texto: Texto a procurar (usado como nome se nome for omitido)
-
role: filtro de função UI -
Button,TextBox,CheckBox,MenuItem,ComboBox, e 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 características
Interação no ambiente de trabalho
- Clique, duplo clique, clique direito e controlo do rato com cinco botões.
- Arrastar e soltar ao nível do píxel.
- Deslocamento por entalhes (três entalhes ≈ uma página).
- Introdução por teclado e combinações de atalhos com várias teclas.
- Rastreamento da posição do cursor.
- Deteção da resolução do ecrã.
Captura de ecrã e análise
- Capturas de ecrã em ecrã inteiro ou recortadas em PNG.
- OCR do ecrã completo com pontuações de confiança por região e caixas delimitadoras.
- Capturas de ecrã apenas da área visível do navegador para conteúdo web.
Gestão de janelas
- Enumere todas as janelas visíveis com posições e dimensões.
- Ativar as janelas por correspondência aproximada do título.
- Foca as janelas do navegador (Edge, Chrome, Firefox) opcionalmente filtradas por URL ou título.
- Fecho suave da janela com proteção para processos críticos do sistema.
Execução de comandos
- Comandos da 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 até 262.144 caracteres de código.
- Diretório de trabalho e controlo de tempo limite por chamada (máximo 30 segundos).
- Limites de recursos e lista de bloqueios reforçada contra metacaracteres de shell, flags de avaliação, escalada de privilégios e operações destrutivas.
Automatização do browser
- Navegar, recuar, avançar, recarregar e condições de espera configuráveis na navegação (
load,networkidle0,networkidle2). - Ler 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 ecrã e lista de separadores numa única chamada.
- Clique, introdução de texto, preenchimento de formulário, arrasto e seleção de opção
<select>ao nível do DOM por seletor CSS. - Interação baseada em acessibilidade-snapshot por ID de referência — clicar, escrever, passar o curso, pressionar teclas com modificadores, rolar e carregar ficheiros.
- Aguarde por elementos dinâmicos com um timeout configurável, com opção de exigir visibilidade.
- Avaliar expressões JavaScript no contexto da página.
- Gestão de múltiplos separadores: listar, alternar entre eles, abrir um ou vários de uma só vez e fechar.
- Inspeção de cookies (valores censurados) e atribuição ao domínio atual.
- Execução de ações em lote — sequenciar múltiplos passos do navegador numa só chamada, parando na primeira falha.
- Guarde a página atual em PDF em
%USERPROFILE%ou%TEMP%. - Tratamento de diálogo para
alert,confirm,prompt, ebeforeunload. - Corre no Microsoft Edge, lançado automaticamente à primeira utilização.
Acessibilidade da interface de utilizador
- Recuperar a Windows Automatização da Interface de Utilizador tree para a janela de primeiro plano com profundidade e contagem de elementos configuráveis.
- Encontre elementos da interface por texto, função ou nome acessível.
- Devolve coordenadas de ecrã clicáveis 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 de um só momento (até cinco segundos). - Usar
browser_wait_forpara sondagens ao nível do DOM (até 30 segundos).
Notes
- Todas as coordenadas estão em píxeis do ecrã com (0,0) no canto superior esquerdo. As coordenadas de
take_screenshot,analyze_screen,find_ui_element, elist_windowstodas partilham o mesmo espaço de coordenadas. - Um sistema de segurança do cursor está ativo: Se o cursor se mover a menos de cinco píxeis de qualquer canto do ecrã, as operações do rato são canceladas. Evite apontar para as extremidades do ecrã.
- Os operadores pipe da shell (|), os pontos e vírgulas (;), os ampersands (&) e o redirecionamento da saída (>, <) estão bloqueados. Para transformar a saída do comando, capture-a e processe-a com
execute_python_code. - Se os sinalizadores de avaliação do interpretador estiverem bloqueados ou se
python -c "..."enode -e "..."forem rejeitados, pode usarexecute_python_codepara código Python, ou escrever primeiro o código num ficheiro. - O comando
stdout/stderré reduzido para 32 KB cada. Utilize sinalizadores para limitar a saída verbosa (por exemplo,git log --oneline -20) ou redirecione para um ficheiro e leia-o separadamente. - O tempo máximo para
execute_shell_commandeexecute_python_codeé de 30 segundos. Para trabalhos mais longos, divide-o em passos mais pequenos ou lança um processo em segundo plano a partir do Python e faz sondagens. - Não existe uma ferramenta dedicada de leitura/escrita de ficheiros. Leia ficheiros com
execute_shell_commandutilizando o comandotype. Escreve ficheiros comexecute_python_codeusando a I/O de ficheiros integrada da Python. O redirecionamento de saída do shell (>, >>) é bloqueado. -
browser_eval_jsretorna sempre uma cadeia de caracteres. Converta objetos ou números explicitamente antes de regressar. - As ferramentas DOM do navegador (
browser_click,browser_type,browser_eval_js, entre outras) funcionam apenas na instância Microsoft Edge.focus_browserpode colocar em foco janelas do Chrome ou do Firefox, mas as ferramentas de DOM não permitem selecioná-las como alvo. -
take_screenshotrequer os quatro parâmetros de corte (x, y, largura, altura) juntos, ou nenhum para uma captura de ecrã completo. -
scrollusa unidades de notch (limitadas ao intervalo [-20, 20]), não píxeis. Três entalhes correspondem aproximadamente a uma página. -
find_ui_elementrequer pelo menos um entre texto, função ou nome. Quando tanto o texto como o nome são fornecidos, o nome tem prioridade. -
browser_snapshotAs referências expiram na navegação. Se uma_refferramenta (clicar, escrever, passar o curso, pressionar tecla, deslocar ou definir entrada de ficheiro) falhar porque o snapshot está obsoleto, volte a tirar o snapshot e tente novamente. -
browser_set_file_input_refsó aceita caminhos de ficheiros nos diretóriosDocuments,Downloads,Desktopou%TEMP%do utilizador. Ficheiros fora dessas localizações são rejeitados. -
browser_get_cookiesDevolve sempre os valores dos cookies censurados. Use-o para inspeção — nomes, domínios, caminhos e flags são devolvidos na totalidade, 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, substitua-o com um valor expiradoexpiresatravés desta ferramenta ou limpe-o através da própria página. -
browser_execute_batchpara na primeira ação falhada e devolve apenas os resultados recolhidos até esse momento. As ações subsequentes no array não são executadas. As ações em lote permitidas limitam-se a:navigate,snapshot,click_ref,type_ref,hover_ref,scroll_ref,keypress_ref,wait_foreeval_js. -
browser_create_tabsabre os separadores pela ordem indicada. SeforegroundIndexfor omitido, o foco mantém-se no separador atualmente ativo. -
browser_get_page_statesó devolve os campos listados nofieldsarray. Peça apenas o que precisa – incluirdomouscreenshotpode originar payloads de grande dimensão.
Casos comuns de utilização
Preencha um formulário web
- Ligue
browser_navigatepara abrir a página alvo. - Chama
browser_wait_forpara aguardar que o formulário seja carregado. - Use
browser_typepara preencher cada campo através do seletor CSS. - Ligue
browser_clickpara submeter o formulário. - Chama
browser_wait_forpara aguardar o elemento de confirmação. - Ligue
browser_get_textpara ler e verificar o resultado.
Automatizar uma aplicação de ambiente de trabalho
- Chame
activate_windowpara trazer a aplicação para primeiro plano. - Chame
take_screenshotpara capturar o estado atual. - Ligue
find_ui_elementpara localizar um botão ou campo pelo nome. - Chame
clicknas coordenadas comunicadas pelo elemento. - Ligue
type_textpara introduzir dados. - Prima
press_keyspara ver os atalhos (por exemplo,["ctrl","s"]para guardar). - Ligue
take_screenshotpara confirmar 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. - Chamada
execute_python_codepara analisar e processar os dados extraídos. - Chamar
browser_eval_jspara consultar valores específicos via JavaScript quando a extração de texto não for suficiente.
Executar tarefas de desenvolvimento
- Chame
execute_shell_commandporgit pull,npm install, edotnet build. - Chame
take_screenshotpara capturar a saída da compilação. - Utilize
execute_python_codepara analisar registos ou resultados de testes. - Chamada
browser_navigatepara abrir um servidor de desenvolvimento local no navegador. - Chama
browser_screenshotpara capturar a página renderizada.
Ler e escrever ficheiros
- Leia um ficheiro ao usar
execute_shell_commandcomtype C:\path\to\file.txt. - Escrever um ficheiro com
execute_python_codeusandoopen(...)ewrite(...)do Python. - Verifique utilizando
execute_shell_commandcomdir C:\path\to\output.txt.
Navegue por interfaces complexas com acessibilidade
- Chama
get_accessibility_treepara compreender a estrutura completa da interface do utilizador. - Chame
find_ui_elementpara encontrar um controlo específico (por exemplo,role: "MenuItem",name: "Settings"). - Chama
clickusando as coordenadas reportadas pelo elemento. - Chame
find_ui_elementnovamente para localizar o controlo seguinte na caixa de diálogo. - Chame
type_textouclickpara interagir com ela.
Mantém viva uma sessão de longa duração
- Envie qualquer pedido ao MCP pelo menos uma vez a cada 30 minutos para evitar a expulsão por inatividade.
-
get_screen_sizeé leve e funciona bem como batimento cardíaco.