Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Note
Questo articolo descrive le caratteristiche utilizzate negli agenti o nei flussi di agenti alimentati dall'imbracatura standard.
Windows 365 for Agents è un server MCP che ti dà il pieno controllo operativo di un cloud PC con Windows 365. Usa questo server MCP per guidare un vero ambiente Windows tramite interazione desktop (mouse, tastiera, cattura dello schermo, esecuzione dei comandi), automazione del browser tramite Microsoft Edge e ispezione semantica dell'interfaccia utente tramite Windows Automazione interfaccia utente.
Note
L'automazione del browser funziona su Microsoft Edge. Edge si avvia automaticamente al primo richiamo allo strumento browser.
focus_browser può anche indirizzare Chrome o Firefox, ma gli strumenti browser a livello DOM funzionano solo sull'istanza Edge.
Per saperne di più sulle Windows 365 per gli agenti, consulta Windows 365 per la documentazione degli agenti.
Overview
| ID del server | URL a livello di tenant | Nome visualizzato | Descrizione |
|---|---|---|---|
mcp_W365ComputerUse |
https://agent365.svc.cloud.microsoft/agents/tenants/{tenantId}/servers/mcp_W365ComputerUse |
Server MCP di Windows 365 per agenti | Controllo operativo completo di un PC cloud con Windows 365, inclusa interazione desktop, automazione del browser e ispezione dell'interfaccia utente. |
Strumenti disponibili
mcp_W365ComputerUse_StartSession
Avvia una sessione di Uso del Computer di Windows 365, stabilendo una connessione a un PC cloud e allocando una risorsa Cloud PC. Restituisce il sessionId che può essere utilizzato per gestire la sessione.
Nessun parametro richiesto.
mcp_W365ComputerUse_EndSession
Termina una sessione attiva di Uso del Computer di Windows 365 e rilascia le relative risorse cloud PC. Passa il valore sessionId restituito da mcp_W365ComputerUse_StartSession.
Parametri richiesti: sessionId
mcp_W365ComputerUse_GetSessionDetails
Restituisce i metadati di una sessione di Computer Use di Windows 365 identificata da sessionId. Passa il valore sessionId restituito da mcp_W365ComputerUse_StartSession. Non elenca sessioni multiple.
Parametri richiesti: sessionId
move_mouse
Sposta il cursore in una posizione dello schermo. Usalo click invece se intendi cliccare sulla destinazione. Parametri obbligatori:
- x: Coordinate X nei pixel dello schermo
- y: Coordinata Y nei pixel dello schermo
click
Esegue un clic in una posizione oppure nella posizione corrente del cursore se le coordinate vengono omesse. Supporta clic singolo, doppio clic e tutti e cinque i tasti del mouse.
Parametri facoltativi:
- x: Coordinata X nei pixel dello schermo (omettere la posizione attuale)
- y: Coordinata Y nei pixel dello schermo (omettere la posizione attuale)
- pulsante: Sinistra, Destra, Centrale, Avanti o Indietro (predefinito Sinistra)
- Numero di clic: 1 = clic singolo, 2 = doppio clic (predefinito 1)
get_cursor_position
Restituisce le coordinate correnti del cursore. Nessun parametro. Restituisce {cursorX, cursorY}.
drag_mouse
Trascina da una posizione all'altra. Utile per spostare oggetti, ridimensionare finestre o scorrere con precisione pixel. Parametri obbligatori:
- startX: Coordinata Start X.
- startY: Coordinata Start Y.
- endX: Fine della coordinata X.
- endY: Coordinata Y finale. Parametri facoltativi:
- pulsante: Sinistra, Destra o Centrale (di default è Sinistra)
scorrere
Scorre in corrispondenza di una posizione utilizzando unità di notch, non pixel. Tre tacche corrispondono a circa una pagina.
Parametri obbligatori:
- x: Posizione di scroll X
- y: Posizione di scorrimento Y
Parametri facoltativi:
- deltaX: tacche orizzontali, positivo = destra (predefinito 0)
- deltaY: Tacche verticali, positivo = verso il basso (predefinito: 0)
Note
I valori sono fissati nell'intervallo [-20, 20].
type_text
Digita testo simulando l'input da tastiera. Per le scorciatoie da tastiera, usa press_keys. Per i campi del modulo web, usa browser_type.
Parametri obbligatori:
- testo: Testo da digitare.
Parametri facoltativi:
- usePaste: Incolla testo dalla cartellina invece di digitare.
premi i tasti
Preme contemporaneamente una combinazione di tasti. Supporta tasti modificatori, tasti funzione e tasti standard.
Parametri obbligatori:
-
tasti: Array di nomi di tasti da premere insieme (ad esempio,
["ctrl","c"],["alt","tab"],["ctrl","shift","s"])
acquisisci_schermata
Acquisisce lo schermo intero o un'area ritagliata come immagine PNG (con codifica Base64).
Parametri facoltativi:
- x: Regione di coltura bordo sinistro
- y: Bordo superiore della regione coltivata
- larghezza: larghezza della regione di coltura
- Altezza: Altezza della regione coltivata
Note
Fornisci tutti e quattro i parametri del ritaglio insieme, oppure ometti tutti e quattro per una cattura a schermo intero.
zoom_region
Cattura una regione dello schermo a risoluzione nativa come immagine PNG (codificata base64). Usa questa funzione per ispezionare piccoli testi o elementi dell'interfaccia densi difficili da leggere in uno screenshot a schermo intero ridimensionato.
Parametri obbligatori:
- x: Coordinate X sul bordo sinistro nei pixel dello schermo
- y: Coordinate Y del bordo superiore nei pixel dello schermo
- larghezza: Larghezza della regione in pixel
- Altezza: Altezza della regione in pixel
Note
La dimensione massima della regione è 1920x1080 pixel.
Analizza schermo
Esegue OCR su tutto lo schermo. Nessun parametro. Restituisce {fullText, averageConfidence, boxes[{text, confidence, x, y, width, height}], width, height}.
get_screen_size
Restituisce la risoluzione dello schermo. Nessun parametro. Restituisce {width, height}.
list_windows
Elenca tutte le finestre visibili con i loro titoli, posizioni e dimensioni. Nessun parametro. Restituisce un array di {title, processName, handle, x, y, width, height}.
attiva_finestra
Porta una finestra in primo piano tramite una corrispondenza approssimativa del titolo.
Parametri obbligatori:
- titolo: Titolo parziale della finestra (sottostringa senza distinzione tra maiuscole e minuscole)
focus_browser
È incentrata su una finestra del browser (Edge, Chrome o Firefox), filtrata facoltativamente in base all'URL o al titolo.
Parametri facoltativi:
- pattern: URL o sottostringa del titolo da far corrispondere (omettere per qualsiasi finestra del browser)
close_window
Chiude una finestra in modo corretto utilizzando una corrispondenza approssimativa del titolo. Il sistema protegge i processi critici e non puoi chiuderli.
Parametri obbligatori:
-
titolo: Titolo parziale della finestra (80% soglia di partita). Restituisce
{matchedTitle, processName, closed}.
ridimensiona_finestra
Ridimensiona, sposta, ingrandisce, riduce al minimo o ripristina una finestra utilizzando una corrispondenza approssimativa del titolo.
Parametri obbligatori:
- titolo: Titolo della finestra da corrispondere (corrispondenza approssimativa insensibile a maiuscole/minuscole)
-
azione: Azione da eseguire -
Resize,Move,Maximize,Minimize, oRestore
Parametri facoltativi:
-
x: Coordinata X del bordo sinistro (usata con
ResizeoMove) -
y: Coordinate Y del bordo superiore (usate con
ResizeoMove) -
larghezza: larghezza in pixel (usata con
Resize) -
Altezza: Altezza in pixel (utilizzato con
Resize)
execute_shell_command
Esegue un comando shell in un ambiente sandbox. Il comando viene verificato rispetto a una lista di permessi e i pattern pericolosi vengono bloccati.
Parametri obbligatori:
- comando: Comando da eseguire
Parametri facoltativi:
-
cwd: Directory operativo. Usa le taglie in avanti (ad esempio,
C:/Users/me/project). - timeoutMs: Timeout in millisecondi (predefinito 30000, massimo 120000)
Note
- Comandi consentiti: git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, type e notepad.
- I pattern bloccati includono i metacaratteri della shell (|, ;, &, <, >), l'espansione delle variabili di ambiente
(%VAR%), i flag eval dell'interprete (python -conode -e),git config --global,npm -g, gli eseguibili con percorso prefissato,rm -rf,sudoe i comandi del disco o di sistema. - Il
stdoute ilstderrdel comando vengono entrambi troncati a 32 KB. Per calcoli arbitrari, si usaexecute_python_code. Il comando restituisce{stdout, stderr, exitCode, success, timedOut, resourceLimitsApplied}.
eseguire codice Python
Esegue codice Python in un ambiente sandbox con limiti di risorse. Questa funzione è ideale per l'elaborazione dati, i calcoli, l'I/O dei file e qualsiasi calcolo che vada oltre i semplici comandi shell.
Parametri obbligatori:
- code: codice Python (massimo 262.144 caratteri).
Parametri facoltativi:
- cwd: Directory operativo. Usa fendenti in avanti.
- timeoutMs: Timeout in millisecondi (predefinito 30000, massimo 120000).
Restituisce lo stesso schema di execute_shell_command.
Note
Il sandbox applica un limite di memoria di 512 MB e un timeout di 30 secondi.
wait_milliseconds
Mette in pausa l'esecuzione per permettere il completamento di animazioni o transizioni. Non usare questa funzione nei cicli di polling. Invece, usa browser_wait_for per il sondaggio DOM.
Parametri obbligatori:
- ms: Durata di attesa in millisecondi (serrata a [0, 5000])
clipboard_read
Legge il contenuto attuale della cartellina di sistema. Questo comando non richiede alcun parametro. Restituisce un oggetto JSON che descrive il formato della cartellina e il payload, che può essere sia una stringa di testo sia un'immagine codificata in base64.
clipboard_write
Scrive testo nella cartella di sistema, sostituendo il contenuto attuale.
Parametri obbligatori:
- testo: Testo da scrivere nella cartellina
Restituisce una conferma che include il conteggio dei caratteri.
list_processes
Elenchi dei processi in esecuzione nella sessione corrente. Ogni voce include il PID, il nome del processo, l'uso della memoria, il titolo della finestra (se presente) e startTimeTicks. Abbinalo startTimeTicks a kill_process per evitare di uccidere un PID riciclato.
Parametri facoltativi:
- maxCount: Numero massimo di processi da restituire (predefinito 200)
Restituisce un array JSON di oggetti info di processo.
termina_processo
Interrompe un processo in base al PID. Specifica il valore startTime da list_processes per proteggerti dal riutilizzo del PID.
Parametri obbligatori:
-
pid: ID processo restituito da
list_processes -
startTime: tick dell'orario di avvio del processo restituiti da
list_processes
Parametri facoltativi:
- force: termina forzatamente senza arresto graduale (impostazione predefinita: false)
Restituisce un risultato JSON che descrive l'esito.
avviare_applicazione
Avvia un'applicazione con interfaccia grafica da una directory autorizzata. Usa execute_shell_command invece per comandi CLI.
Parametri obbligatori:
-
path: Path assoluto verso l'eseguibile. Usa le taglie in avanti (ad esempio,
C:/Program Files/app.exe).
Parametri facoltativi:
- args: Elenco di argomenti della riga di comando
Restituisce {path, pid}.
get_system_info
Restituisce la versione del sistema operativo, CPU, RAM, spazio disco disponibile e risoluzione del display. Nessun parametro. Restituisce un oggetto JSON contenente le informazioni di sistema.
browser_navigate
Naviga fino a un URL e aspetta che la pagina si carichi.
Parametri obbligatori:
-
URL: URL completo incluso il protocollo (ad esempio,
https://example.com)
browser_back
Torna indietro nella cronologia del browser. Nessun parametro.
browser_forward
Naviga avanti nella cronologia del browser. Nessun parametro.
Ricarica il browser
Ricarica la pagina corrente. Nessun parametro.
browser_get_url
Restituisce l'URL della pagina corrente come stringa semplice. Nessun parametro.
browser_get_title
Restituisce il titolo della pagina corrente come una stringa semplice. Nessun parametro.
browser_get_text
Restituisce il contenuto visibile del testo della pagina come una stringa semplice. Nessun parametro. Troncato a 512 KB.
browser_get_html
Restituisce il codice sorgente HTML a pagina intera come una stringa semplice. Nessun parametro. Troncato a 512 KB.
browser_get_page_state
Recupera più campi di stato della pagina in una singola chiamata. Utile per catturare diversi segnali contemporaneamente senza emettere chiamate separate agli strumenti.
Parametri obbligatori:
-
campi: Array di campi da restituire. Valori consentiti:
url,title,dom,screenshot,tabs
Restituisce un oggetto JSON contenente solo i campi richiesti.
browser_click
Clicca su un elemento DOM tramite il selettore CSS. Più affidabile del clic basato su coordinate per i contenuti web.
Parametri obbligatori:
-
selettore: selettore CSS (ad esempio,
#submit-btnoppurea.nav-link)
browser_type
Digita il testo in un elemento form usando un selettore CSS.
Parametri obbligatori:
- selettore: selettore CSS dell'elemento di input.
- testo: Testo da digitare.
browser_query_text
Ottiene il contenuto del testo del primo elemento che corrisponde a un selettore CSS.
Parametri obbligatori:
- Selettore: Selettore CSS.
browser_wait_for
Aspetta che appaia un elemento DOM. Questa funzione è utile per contenuti dinamici che si caricano asincronamente.
Parametri obbligatori:
- selector: selettore CSS da attendere.
Parametri facoltativi:
- timeoutMs: Timeout in millisecondi. Il valore predefinito è 5.000 e il massimo è 30.000.
browser_eval_js
Valuta un'espressione JavaScript nel contesto della pagina e restituisce il risultato come stringa.
Parametri obbligatori:
- expression: espressione JavaScript che restituisce una stringa
Note
Se la tua espressione restituisce un oggetto o un numero, convertilo esplicitamente in una stringa (ad esempio, JSON.stringify(obj) o .toString()).
browser_list_tabs
Elenca tutte le schede aperte con indice, titolo e URL. Non è necessario alcun parametro. Restituisce un array di {index, title, url}.
Parametri facoltativi:
- tabId: Identificatore unico di scheda
browser_switch_tab
Seleziona una scheda in base all'indice.
Parametri obbligatori:
- tabIndex: indice di tabulazione con base 0
Parametri facoltativi:
- tabId: Identificatore unico di scheda
browser_nuova_scheda
Apre una nuova scheda, facoltativamente passando a un URL.
Parametri facoltativi:
- URL: URL da aprire (scheda vuota se omessa)
Restituisce {index, title, url}.
crea schede del browser
Apre più schede contemporaneamente. Facoltativamente, portane uno in primo piano.
Parametri obbligatori:
- URL: Array di URL da aprire, una scheda per URL
Parametri facoltativi:
- foregroundIndex: Indice della scheda da portare in primo piano dopo la creazione (omettere per mantenere la scheda corrente focalizzata)
Risponde a un messaggio di conferma.
browser_close_tab
Chiude una scheda in base al relativo indice.
Parametri obbligatori:
tabIndice: indice delle schede basato su 0 Parametri opzionali:
tabId: Identificatore unico di scheda
schermata_del_browser
Acquisisce uno screenshot PNG solo del riquadro di visualizzazione del browser (non lo schermo intero). Nessun parametro. Restituisce una PNG codificata base64.
browser_select_option
Seleziona una o più opzioni in un <select> elemento in base al relativo value attributo.
Parametri obbligatori:
-
Selettore: Selettore CSS per l'elemento
<select> - valori: Array di valore o valori di opzione da selezionare
Restituisce una conferma con il conteggio delle opzioni selezionate.
browser_compila_modulo
Compila più campi del modulo in un'unica chiamata. Ogni voce è costituita da una coppia {selector, value}. L'operazione si interrompe al primo guasto e riporta quali campi hanno avuto successo.
Parametri obbligatori:
-
campi: Array di
{selector, value}coppie
Restituisce una conferma con il conteggio dei campi riempiti.
browser_drag
Trascina un elemento di origine in un elemento di destinazione. Entrambi gli elementi sono identificati tramite il selettore CSS.
Parametri obbligatori:
- sourceSelector: Selettore CSS della sorgente di drag
- targetSelector: selettore CSS della destinazione di rilascio
browser_pdf_save
Salva la pagina corrente come file PDF. I percorsi di destinazione sono limitati a %USERPROFILE% o %TEMP%.
Parametri obbligatori:
-
filePath: Percorso del file di destinazione sotto
%USERPROFILE%o%TEMP%. Usa fendenti in avanti.
Restituisce una conferma che include il percorso del file salvato.
browser_handle_dialog
Accetta o chiude una finestra di dialogo del browser in sospeso (avviso, conferma, richiesta di input o beforeunload). Restituisce "Nessun dialogo in sospeso" se nessun dialogo è attivo.
Parametri obbligatori:
-
azione:
acceptoppuredismiss
Parametri facoltativi:
- promptText: Testo da fornire a una finestra di dialogo prompt (ignorato per avviso e conferma)
browser_get_cookies
Ottiene i cookie per la pagina corrente o per un set specificato di URL. I valori dei cookie sono sempre oscurati per motivi di sicurezza; nomi, domini, percorsi e flag vengono restituiti.
Parametri facoltativi:
- URL: Array di URL per cui ottenere i cookie (omettere per la pagina corrente)
Restituisce un array di oggetti cookie con valori oscurati.
browser_set_cookies
Imposta i cookie nel dominio della pagina corrente. Questa azione aggiunge o sovrascrive i cookie, ma non cancella i cookie esistenti.
Parametri obbligatori:
-
cookie: Array di oggetti cookie. Ogni voce richiede
nameevalue. Campi opzionali:domain,path,secure,httpOnly,sameSite.
Risponde a un messaggio di conferma.
browser_execute_batch
Esegue più azioni del browser in sequenza in una singola chiamata. Questa azione si interrompe al primo guasto e restituisce i risultati raccolti fino a quel momento.
Parametri obbligatori:
-
azioni: Matrice di
{action, params}oggetti. Azioni consentite:navigate,snapshot,click_ref,type_ref,hover_ref,scroll_ref,keypress_ref, ,wait_for, , .eval_js
Restituisce una serie di risultati, uno per ogni azione eseguita.
istantanea del browser
Cattura l'albero di accessibilità della pagina con ID di riferimento stabili (ad esempio, e5) che si mappano ai nodi DOM. Usa i riferimenti con browser_click_ref, browser_type_ref e browser_hover_ref. I riferimenti scadono quando si passa a un'altra pagina: acquisisci nuovamente un'istantanea dopo la navigazione.
Parametri facoltativi:
- maxDepth: Profondità massima dell'albero, 1-10 (predefinito 5)
- includeIframes: Include gli iframe cross-origin (valore predefinito: true)
Restituisce un oggetto JSON contenente lo snapshot di accessibilità e gli ID delle riferizioni.
browser_click_ref
Fa clic su un elemento in base all'ID di riferimento da browser_snapshot. Un hit-test verifica che nessun altro elemento sovrappone il bersaglio. Non riesce se l'istantanea scade; in tal caso, acquisiscila nuovamente.
Parametri obbligatori:
-
snapshotId: ID snapshot restituito da
browser_snapshot -
ref: Elemento ref (ad esempio,
e5) dai nodi snapshot
Parametri facoltativi:
- pulsante: Sinistra, Destra o Centrale (predefinito Sinistra)
- Numero di clic: 1 = clic singolo, 2 = doppio clic (predefinito 1)
Restituisce una conferma con le coordinate cliccate.
browser_type_ref
Inserisce del testo in un elemento usando l'ID di riferimento ottenuto da browser_snapshot. L'elemento viene messo a fuoco per primo e il testo esistente viene cancellato di default. L'operazione non riesce se lo snapshot scade.
Parametri obbligatori:
-
snapshotId: ID snapshot restituito da
browser_snapshot -
ref: Elemento ref (ad esempio,
e5) dai nodi snapshot - testo: Testo da scrivere
Parametri facoltativi:
- Clear: Cancella prima il testo esistente (predefinito vero)
Restituisce una conferma che include il conteggio dei caratteri.
browser_hover_ref
Passa con il puntatore su un elemento utilizzando l'ID di riferimento di browser_snapshot. Ritorna immediatamente. L'operazione non riesce se lo snapshot scade; in tal caso, acquisisci nuovamente lo snapshot.
Parametri obbligatori:
-
snapshotId: ID snapshot restituito da
browser_snapshot -
ref: Elemento ref (ad esempio,
e5) dai nodi snapshot
Fornisce una conferma che include le coordinate del passaggio del mouse.
get_accessibility_tree
Recupera l'albero degli elementi dell'interfaccia utente per la finestra in primo piano. Ogni elemento include ruolo, nome, valore e coordinate dello schermo.
Parametri facoltativi:
- maxDepth: Profondità massima di attraversamento dell'albero, 1-10 (predefinito 3)
- maxElements: Massimo elementi da restituire, 1-2000 (predefinito 500)
Restituisce un albero gerarchico di {ruolo, nome, valore, x, y, larghezza, altezza, figli[...]}.
browser_keypress_ref
Preme un singolo tasto su un elemento tramite l'ID di riferimento da browser_snapshot. L'elemento riceve per primo il focus. Supporta tasti modificatori. Non riesce se l'istantanea è scaduta — in tal caso, acquisisci nuovamente l'istantanea.
Parametri obbligatori:
-
snapshotId: ID snapshot restituito da
browser_snapshot -
ref: Elemento ref (ad esempio,
e5) dai nodi snapshot -
chiave: nome chiave — ad esempio,
Enter,Escape,Tab,ArrowUp,ArrowDown, oF1–F12
Parametri facoltativi:
-
modificatori: Array di tasti modificatori da tenere premuto durante la pressione —
Ctrl,Shift,Alt, oMeta
Risponde a un messaggio di conferma.
browser_scroll_ref
Scorre un elemento nella visualizzazione in base all'ID riferimento da browser_snapshot. Facoltativamente, scorre in base a un delta pixel all'interno dell'elemento . Fallisce se lo snapshot scade.
Parametri obbligatori:
-
snapshotId: ID snapshot restituito da
browser_snapshot -
ref: Elemento ref (ad esempio,
e5) dai nodi snapshot
Parametri facoltativi:
- deltaX: Delta di scorrimento orizzontale nei pixel (predefinito 0)
- deltaY: Delta di scorrimento verticale nei pixel (predefinito 0)
Risponde a un messaggio di conferma.
browser_set_file_input_ref
Imposta i file in un elemento di input del file in base all'ID di riferimento da browser_snapshot. I percorsi dei file sono limitati alle directory Documents, Downloads, Desktop o %TEMP% dell'utente.
Parametri obbligatori:
-
snapshotId: ID snapshot restituito da
browser_snapshot - ref: Element ref per l'input del file
- filePaths: Array di percorsi di file da caricare
Risponde a un messaggio di conferma.
trova_elemento_interfaccia_utente
Cerca gli elementi dell'interfaccia utente in base al contenuto di testo, al ruolo di accessibilità o al nome (sottostringa senza distinzione tra maiuscole e minuscole). Restituisce gli elementi corrispondenti con le relative coordinate cliccabili sullo schermo.
Parametri facoltativi:
- testo: Testo da cercare (usato come nome se nome omesso)
-
role: filtro dei ruoli dell'interfaccia utente -
Button,TextBoxCheckBox,MenuItem, ,ComboBoxe altro ancora - nome: Nome accessibile (ha la precedenza sul testo se entrambi sono forniti)
- windowHandle: Handle della finestra di destinazione (null = finestra in primo piano)
Funzionalità principali
Interazione con il desktop
- Clic, doppio clic, clic destro e controllo del mouse a cinque pulsanti.
- Trascinamento con precisione al pixel.
- Scorrimento a tacche (tre tacche ≈ una pagina).
- Digitazione da tastiera e combinazioni di tasti di scelta rapida.
- Tracciamento della posizione del cursore.
- Rilevamento della risoluzione dello schermo.
Cattura e analisi dello schermo
- Screenshot PNG a schermo intero o ritagliati.
- OCR dello schermo intero con punteggi di affidabilità per regione e riquadri di delimitazione.
- Screenshot solo per i contenuti web con vista del browser.
Gestione delle finestre
- Enumerare tutte le finestre visibili con posizioni e dimensioni.
- Attiva Windows tramite fuzzy title match.
- Focalizza le finestre del browser (Edge, Chrome, Firefox) filtrate opzionalmente per URL o titolo.
- Chiusura elegante con protezione per processi critici per il sistema.
Esecuzione di comandi
- Comandi sandbox shell con una lista di permessi (git, npm, dotnet, python, cargo, node, pip, dir, mkdir, del, copy, move, robocopy, findstr, where, type).
- Esecuzione in sandbox Python fino a 262.144 caratteri di codice.
- Directory di lavoro e controllo del timeout per ogni chiamata (massimo 30 secondi).
- Limiti di risorse ed elenco di blocco irrobustito contro i metacaratteri della shell, i flag eval, l'escalation dei privilegi e le operazioni distruttive.
Automazione del browser
- Navigazione, indietro, avanti, ricaricare e condizioni di attesa configurabili per la navigazione (
load,networkidle0,networkidle2). - Leggi URL della pagina, titolo, testo visibile (limite di 512 KB) e HTML completo (limite di 512 KB).
- Recupero consolidato dello stato della pagina — URL, titolo, DOM, screenshot e elenco di schede in una singola chiamata.
- Click, digitazione, compilazione di moduli, trascinamento e
<select>selezione di opzioni a livello DOM tramite selettore CSS. - Interazione basata su snapshot di accessibilità tramite ID di riferimento — clic, digitazione, passaggio del cursore, pressione di tasti con modificatori, scorrimento e caricamento tramite input file.
- Attendere gli elementi dinamici con timeout configurabile, che opzionalmente richiedono visibilità.
- Valutare JavaScript espressioni nel contesto della pagina.
- Gestione multi-scheda: elenca, cambia, apri una o più schede contemporaneamente e chiude.
- Ispezione dei cookie (valori oscurati) e assegnazione sul dominio corrente.
- Esecuzione di azioni in lotti — sequenzia più passaggi del browser in una sola chiamata, fermandosi al primo errore.
- Salva la pagina corrente come PDF sotto
%USERPROFILE%o%TEMP%. - Gestione del dialogo per
alert,confirm,prompt, ebeforeunload. - Gira su Microsoft Edge, avviata automaticamente al primo utilizzo.
Accessibilità dell'interfaccia utente
- Recupera il Windows Automazione interfaccia utente tree per la finestra in primo piano con profondità e numero di elementi configurabili.
- Trova gli elementi dell'interfaccia utente per testo, ruolo o nome accessibile.
- Fornisce coordinate cliccabili sullo schermo per la selezione precisa di pulsanti, caselle di testo, caselle di controllo, voci di menu e caselle combinate.
Tempismo e sincronizzazione
- Usa
wait_millisecondsper brevi pause una tantum (fino a cinque secondi). - Usare
browser_wait_forper il polling a livello di DOM (fino a 30 secondi).
Notes
- Tutte le coordinate sono in pixel dello schermo con (0,0) nell'angolo in alto a sinistra. Le coordinate da
take_screenshot,analyze_screen,find_ui_element, elist_windowstutte condividono lo stesso spazio di coordinate. - È attivo un sistema di sicurezza del cursore: se il cursore si muove entro cinque pixel da qualsiasi angolo dello schermo, le operazioni con il mouse vengono annullate. Evita di puntare ai bordi estremi dello schermo.
- Gli operatori dei tubi shell (|), i punti e virgola (;), i numeri ampersand (&) e la redirezione di uscita (>, <) sono bloccati. Per trasformare l'output del comando, catturalo ed elaboralo con
execute_python_code. - Se i flag di valutazione dell'interprete sono bloccati o se
python -c "..."enode -e "..."vengono rifiutati, puoi usareexecute_python_codeper il codice Python oppure scrivere prima il codice in un file. - Il comando
stdout/stderrè troncato a 32 KB ciascuno. Usa flag per limitare l'output verboso (ad esempio,git log --oneline -20) oppure reindirizza a un file e leggilo separatamente. - Il timeout massimo per
execute_shell_commandeexecute_python_codeè di 30 secondi. Per lavori più lunghi, suddividilo in passaggi più piccoli o avvia un processo in background da Python e fai sondaggi. - Non esiste uno strumento dedicato per la lettura/scrittura dei file. Leggi i file con
execute_shell_commandusando il comandotype. Scrivi file conexecute_python_codeusando l'I/O file integrato di Python. La redirezione dell'uscita della shell (>, >>) è bloccata. -
browser_eval_jsrestituisce sempre una stringa. Converti oggetti o numeri esplicitamente prima di restituirli. - Gli strumenti DOM del browser (
browser_click,browser_type,browser_eval_jse altri) operano solo sull'istanza Microsoft Edge.focus_browserPuò mettere a fuoco le finestre di Chrome o Firefox, ma gli strumenti DOM non le mirano. -
take_screenshotRichiede tutti e quattro i parametri di ritaglio (x, y, larghezza, altezza) insieme, oppure nessuno per una cattura a schermo intero. -
scrollusa unità notch (limitate all'intervallo [-20, 20]), non i pixel. Tre tacche equivalgono a circa una pagina. -
find_ui_elementrichiede almeno uno tra testo, ruolo o nome. Quando sono forniti sia testo che nome, il nome ha la precedenza. -
browser_snapshotI refermi scadono durante la navigazione. Se uno_refstrumento (clicca, digita, passi il cursore, preme un tasto, scorri o imposta input file) fallisce perché lo snapshot è obsoleto, rifai lo snapshot e riprova. -
browser_set_file_input_refaccetta solo percorsi di file nelle directory dell'utenteDocuments,Downloads,Desktopo%TEMP%. I file al di fuori di quelle località vengono rifiutati. -
browser_get_cookiesrestituisce sempre i valori dei cookie oscurati. Usalo per l'ispezione: nomi, domini, percorsi e flag vengono restituiti per intero, ma i valori non vengono esposti. -
browser_set_cookiesaggiunge o sovrascrive solo i cookie. Non cancella i cookie esistenti. Per rimuovere un cookie, sovrascrivilo con un valore scadutoexpirestramite questo strumento, oppure cancellalo direttamente nella pagina. -
browser_execute_batchsi ferma alla prima azione fallita e restituisce solo i risultati raccolti fino a quel momento. Le azioni successive nell'array non vengono eseguite. Le azioni batch consentite sono limitate a:navigate,snapshot,click_ref,type_refhover_ref, ,scroll_ref,keypress_ref, ,wait_for, eeval_js. -
browser_create_tabsApre le schede nell'ordine fornito. SeforegroundIndexviene omesso, la concentrazione rimane sulla scheda attualmente attiva. -
browser_get_page_staterestituisce solo i campi elencati nell'arrayfields. Richiedi solo ciò di cui hai bisogno: includeredomoscreenshotpuò produrre payload di grandi dimensioni.
Casi d'uso comuni
Compila un modulo web
- Chiama
browser_navigateper aprire la pagina target. - Chiama
browser_wait_forper aspettare che il modulo si carichi. - Chiamata
browser_typeper compilare ogni campo tramite il selettore CSS. - Chiama
browser_clickper inviare il modulo. - Chiama
browser_wait_forper aspettare l'elemento di conferma. - Chiama
browser_get_textper leggere e verificare il risultato.
Automatizza un'applicazione desktop
- Richiama
activate_windowper portare l'applicazione in primo piano. - Chiama
take_screenshotper acquisire lo stato corrente. - Chiama
find_ui_elementper trovare un pulsante o un campo per nome. - Chiama
clickalle coordinate segnalate dell'elemento. - Chiama
type_textper inserire dati. - Usa
press_keysper le scorciatoie da tastiera (ad esempio,["ctrl","s"]per salvare). - Chiama
take_screenshotper verificare il risultato.
Estrae dati da una pagina web
- Chiama
browser_navigateper aprire la pagina. - Chiamata
browser_get_textper estrarre il contenuto testuale visibile. - Chiamata
execute_python_codeper analizzare ed elaborare i dati estratti. - Chiama
browser_eval_jsper interrogare valori specifici tramite JavaScript quando l'estrazione del testo non è sufficiente.
Esegui compiti di sviluppo
- Chiama
execute_shell_commandpergit pull,npm installedotnet build. - Richiama
take_screenshotper acquisire l'output della build. - Chiama
execute_python_codeper analizzare log o risultati di test. - Chiama
browser_navigatead aprire un server di sviluppo locale nel browser. - Chiama
browser_screenshotper catturare la pagina renderizzata.
Leggi e scrivi file
- Leggi un file usando
execute_shell_commandcontype C:\path\to\file.txt. - Scrivi un file usando
execute_python_codecon Pythonopen(...)ewrite(...). - Verifica usando
execute_shell_commandcondir C:\path\to\output.txt.
Naviga in un'interfaccia utente complessa con accessibilità
- Chiama
get_accessibility_treeper capire tutta la struttura dell'interfaccia utente. - Chiama
find_ui_elementper trovare un controllo specifico (ad esempio,role: "MenuItem",name: "Settings"). - Chiama
clickusando le coordinate riportate dall'elemento. - Chiama
find_ui_elementdi nuovo per trovare il controllo successivo nel dialogo. - Chiama
type_textoclickper interagire con esso.
Mantenere viva una sessione di lunga durata
- Invia una richiesta MCP almeno una volta ogni 30 minuti per evitare la rimozione per inattività.
-
get_screen_sizeè leggero e funziona bene come battito cardiaco.