Pubblicato il 9 giugno 2026, ultimo aggiornamento il 1° luglio 2026
| Spiegazione | Web | Estensioni | Stato di Chrome | Intenzione |
|---|---|---|---|---|
| GitHub | Visualizza | Intenzione di sperimentare |
Puoi utilizzare Web Model Context Protocol (WebMCP) per creare ed esporre strumenti strutturati agli agenti AI in esecuzione all'interno del browser, inclusi gli agenti basati su estensioni. Un agente utilizza un modello linguistico di grandi dimensioni (LLM), regole, memoria e strumenti per eseguire azioni per conto dell'utente.
Poiché i modelli LLM trattano tutto il testo, le istruzioni e i dati utente come una singola sequenza di token, sono soggetti all'iniezione indiretta di prompt, ovvero all'inclusione di istruzioni dannose da parte di un malintenzionato. Il nostro team ha scritto questo documento sulla sicurezza degli strumenti per aiutarti a proteggere il tuo sito web e i tuoi utenti da malintenzionati.
Sebbene alcuni modelli abbiano livelli che gestiscono l'iniezione di prompt, è impossibile garantire la sicurezza all'interno di un modello linguistico di grandi dimensioni (LLM). I modelli sono di natura probabilistica. È importante ricordare che sono stati eseguiti attacchi di prompt injection ripetibili contro i sistemi agentici che utilizzano modelli LLM allo stato dell'arte e che la prevalenza degli attacchi sul web è in aumento.
Per risolvere questi problemi, abbiamo fornito indicazioni preliminari sulla sicurezza per chi crea strumenti con WebMCP.
Utilizzare i suggerimenti per le annotazioni
Quando crei i tuoi strumenti, devi aggiungere alcuni suggerimenti:
- Utilizza
untrustedContentHintdove appropriato. Se uno strumento restituisce contenuti generati dagli utenti (UGC) o dati provenienti da fonti esterne, valuta la possibilità di aggiungereuntrustedContentHintallo strumento. Questo campo etichetta esplicitamente il payload come non attendibile, per proteggere l'integrità del tuo sito e fornire all'agente un segnale che indica che questi dati richiedono un'analisi più approfondita. - Utilizza il
readOnlyHintsugli strumenti che non modificano lo stato. In questo modo, l'agente può prendere decisioni migliori su quando chiedere le conferme dell'utente.
Esporre gli strumenti con attenzione
L'API document.modelContext.registerTool di WebMCP espone la funzionalità dello strumento solo agli agenti. Per impostazione predefinita, altri siti web o iframe cross-origin non possono osservare o interagire con i tuoi strumenti.
Puoi fornire l'accesso al tuo strumento con l'
exposedTo opzione in
registerTool a un array di origini specifiche e sicure. In questo modo, lo strumento viene esposto a queste origini quando è incorporato nel tuo sito e quando il tuo sito è incorporato in quell'origine.
// https://partner.org
await document.modelContext.registerTool({
name: 'my_shared_tool',
description: 'Shared across origins',
// ...
}, {
exposedTo: ['https://trusted.com', 'https://example.com']
});
Esporre gli strumenti solo alle origini di cui ti fidi. Questo è particolarmente importante quando gli strumenti gestiscono i dati utente o influiscono in altro modo sull'utente.
- Uno strumento di sola lettura, come
getFavoriteProducts, può rivelare informazioni su un utente. Dovresti esporre questi strumenti solo ai siti web con cui altrimenti condivideresti direttamente questi dati. - Gli strumenti con accesso in lettura e scrittura eseguono azioni per conto di un utente. Questi strumenti devono essere esposti solo alle origini che ritieni attendibili quando agiscono per conto dell'utente. Ad esempio, potresti voler esporre
postCommentatrustedExample.com, ma non aevilExample.com.
Impostare i budget dei caratteri
Per evitare di imbattersi nelle barriere di protezione degli agenti, scrivi descrizioni e output degli strumenti succinti. Per risultati migliori, ti consigliamo i seguenti limiti di caratteri:
- 500 caratteri per la descrizione dello strumento
- 150 caratteri per la descrizione del parametro
- 30 caratteri per il nome dello strumento e il nome del parametro
- Limite di 1500 caratteri per l'output di ogni strumento
È probabile che ci siano alcune variazioni tra gli agenti e potresti voler modificare i budget dei caratteri in base al feedback degli utenti.
Passaggi successivi
Continuiamo a fare ricerche e a lavorare alla creazione di un'infrastruttura sicura per il web di agenti. Ad esempio, è in corso una
discussione sulla gestione del consenso
tra le parti e la bozza della specifica include
requestUserInteraction()
per richiedere in modo asincrono l'input dell'utente durante l'esecuzione dello strumento.
Come prevedi di implementare WebMCP nella tua applicazione? Hai altre preoccupazioni, di sicurezza o di altro tipo? Se ti registri alla prova dell'origine WebMCP, vogliamo conoscere la tua esperienza:
- Condividi il tuo feedback sulla forma dell'API commentando un problema esistente o aprendone uno nuovo nella spiegazione di WebMCP su GitHub.
- Se hai feedback sull'implementazione di Chrome, segnala un bug di Chromium.
- Partecipa al programma di anteprima per dare un'occhiata in anteprima alle nuove API e accedere alla nostra mailing list.
- Esamina l'implementazione di Chrome in Stato di Chrome.
Se stai creando un agente, ti consigliamo di leggere Considerazioni sulla sicurezza degli agenti per WebMCP.