Opublikowano: 9 czerwca 2026 r.
Za pomocą protokołu Web Model Context Protocol (WebMCP) możesz tworzyć i udostępniać strukturalne narzędzia agentom AI działającym w przeglądarce, w tym agentom opartym na rozszerzeniach. Agent wykorzystuje duży model językowy (LLM), reguły, pamięć i narzędzia do wykonywania działań w imieniu użytkownika.
Modele LLM traktują cały tekst, instrukcje i dane użytkowników jako pojedynczy ciąg tokenów, dlatego są podatne na pośrednie wstrzykiwanie promptów, czyli dodawanie przez atakującego złośliwych instrukcji. Nasz zespół przygotował ten dokument dotyczący bezpieczeństwa narzędzi, aby pomóc Ci chronić Twoją witrynę i użytkowników przed nieuczciwymi podmiotami.
Niektóre modele mają warstwy, które zapobiegają wstrzykiwaniu promptów, ale nie można zagwarantować bezpieczeństwa w dużym modelu językowym (LLM). Modele mają charakter probabilistyczny. Pamiętaj, że w przypadku systemów agentowych, które korzystają z najnowocześniejszych LLM, dochodziło już do powtarzalnych ataków typu wstrzykiwanie promptów.Częstość występowania ataków w internecie rośnie.
Aby rozwiać te obawy, przygotowaliśmy wstępne wskazówki dotyczące bezpieczeństwa dla osób, które tworzą narzędzia za pomocą WebMCP.
Korzystanie z podpowiedzi dotyczących adnotacji
Podczas tworzenia narzędzi warto dodać kilka wskazówek:
- W razie potrzeby użyj
untrustedContentHint. Jeśli narzędzie zwraca treści generowane przez użytkowników lub dane pochodzące z zewnętrznych źródeł, rozważ dodanie do niego ikonyuntrustedContentHint. To pole wyraźnie oznacza ładunek jako niezaufany, co pomaga chronić integralność witryny, a jednocześnie wysyła do agenta sygnał, że te dane wymagają większej uwagi. - Używaj ikony
readOnlyHintw przypadku narzędzi, które nie zmieniają stanu. Dzięki temu agent może podejmować lepsze decyzje dotyczące tego, kiedy prosić użytkowników o potwierdzenie.
Udostępniaj narzędzia z rozwagą
Interfejs WebMCP document.modelContext.registerTool udostępnia funkcje narzędzia tylko agentom. Domyślnie inne witryny lub ramki iframe z innych domen nie mogą obserwować Twoich narzędzi ani wchodzić z nimi w interakcje.
Możesz przyznać dostęp do narzędzia za pomocą opcji exposedTo w registerTool, aby umożliwić dostęp do tablicy konkretnych, bezpiecznych punktów początkowych. Udostępnia to narzędzie tym domenom, gdy jest ono osadzone w Twojej witrynie, oraz gdy Twoja witryna jest osadzona w tej domenie.
// https://partner.org
document.modelContext.registerTool({
name: 'my_shared_tool',
description: 'Shared across origins',
// ...
}, {
exposedTo: ['https://trusted.com', 'https://example.com']
});
Udostępniaj narzędzia tylko zaufanym źródłom. Jest to szczególnie ważne, gdy narzędzia zarządzają danymi użytkowników lub w inny sposób wpływają na użytkownika.
- Narzędzie tylko do odczytu, takie jak
getFavoriteProducts, może ujawniać informacje o użytkowniku. Udostępniaj te narzędzia tylko witrynom, którym w inny sposób udostępniasz te dane bezpośrednio. - Narzędzia z uprawnieniami do odczytu i zapisu wykonują działania w imieniu użytkownika. Te narzędzia powinny być udostępniane tylko źródłom, które uznasz za zaufane, gdy działają w imieniu użytkownika. Możesz na przykład chcieć udostępnić
postCommentużytkownikomtrustedExample.com, ale nie użytkownikomevilExample.com.
Ustawianie budżetów znaków
Aby uniknąć ograniczeń dotyczących agentów, pisz zwięzłe opisy narzędzi i wyniki. Aby uzyskać lepsze rezultaty, zalecamy stosowanie tych limitów znaków:
- 500 znaków na opis narzędzia
- 150 znaków na opis parametru
- 30 znaków w nazwie narzędzia i nazwie parametru
- Limit 1500 znaków na wynik każdego narzędzia
Prawdopodobnie poszczególni agenci będą się różnić, więc możesz dostosować limity znaków na podstawie opinii użytkowników.
Dalsze kroki
Stale prowadzimy badania i pracujemy nad stworzeniem bezpiecznej infrastruktury dla sieci opartej na agentach. Na przykład trwa dyskusja na temat zarządzania zgodą między różnymi podmiotami, a projekt specyfikacji zawiera requestUserInteraction(), które umożliwiają asynchroniczne żądanie danych wejściowych użytkownika podczas wykonywania narzędzia.
Jak zamierzasz wdrożyć WebMCP w swojej aplikacji? Czy masz inne obawy, dotyczące bezpieczeństwa lub nie? Jeśli zarejestrujesz się w programie testów origin WebMCP, chcemy poznać Twoją opinię:
- Podziel się opinią o kształcie interfejsu API, komentując istniejący problem lub otwierając nowy w wyjaśnieniu WebMCP na GitHub.
- Jeśli masz uwagi na temat implementacji Chrome, zgłoś błąd w Chromium.
- Dołącz do programu wcześniejszego dostępu, aby jako pierwszy(-a) poznać nowe interfejsy API i uzyskać dostęp do naszej listy mailingowej.
- Sprawdź implementację w Chrome na stronie Stan Chrome.
Jeśli tworzysz agenta, zalecamy zapoznanie się z artykułem Względy bezpieczeństwa dotyczące agentów w przypadku WebMCP.