Sicherheit von WebMCP-Tools

Julia Pagnucco
Julia Pagnucco
Alexandra Klepper
Alexandra Klepper

Veröffentlicht am 9. Juni 2026, zuletzt aktualisiert am 1. September 2026

Erklärvideo Web Erweiterungen Chrome-Status Absicht
GitHub Ursprungstest Ursprungstest Ansicht Absicht zum Testen

Mit dem Web Model Context Protocol (WebMCP) können Sie strukturierte Tools für KI-Agenten erstellen und bereitstellen, die im Browser ausgeführt werden, einschließlich Agenten, die von Erweiterungen unterstützt werden. Ein Agent verwendet ein Large Language Model (LLM), Regeln, Speicher und Tools, um Aktionen im Namen des Nutzers auszuführen.

Da LLMs alle Texte, Anweisungen und Nutzerdaten als eine einzelne Sequenz von Tokens behandeln, sind sie anfällig für indirekte Prompt Injection, d. h. für das Einfügen schädlicher Anweisungen durch einen Angreifer. Unser Team hat dieses Dokument zur Toolsicherheit verfasst, um Sie dabei zu unterstützen, Ihre Website und Ihre Nutzer vor böswilligen Akteuren zu schützen.

Einige Modelle haben zwar Ebenen, die Prompt Injection verhindern, aber es ist unmöglich, die Sicherheit innerhalb eines Large Language Model (LLM) zu garantieren. Modelle sind probabilistischer Natur. Es gab bereits wiederholte Prompt-Injection-Angriffe auf agentische Systeme, die modernste LLMs verwenden, und die Häufigkeit von Angriffen im Web nimmt zu.

Um diesen Bedenken Rechnung zu tragen, haben wir vorläufige Richtlinien zur Sicherheit für Entwickler von Tools mit WebMCP bereitgestellt.

Hinweise zu Anmerkungen verwenden

Beim Erstellen von Tools sollten Sie einige Hinweise hinzufügen:

  • Verwenden Sie untrustedContentHint bei Bedarf. Wenn ein Tool von Nutzern erstellte Inhalte (UGC) oder Daten aus externen Quellen zurückgibt, sollten Sie dem Tool untrustedContentHint hinzufügen. Dieses Feld kennzeichnet die Nutzlast explizit als nicht vertrauenswürdig, um die Integrität Ihrer Website zu schützen und dem Agenten zu signalisieren, dass diese Daten genauer geprüft werden müssen.
  • Verwenden Sie consequentialHint für risikoreiche oder nicht umkehrbare Aktionen. Wenn die Ausführung eines Tools zu wichtigen Aktionen führt, z. B. zum Buchen einer Reise oder zum Überweisen von Geld, legen Sie consequentialHint: true fest, damit der Agent oder Browser vor der Ausführung eine Bestätigung vom Nutzer anfordern kann.
  • Verwenden Sie readOnlyHint für Tools, die den Status nicht ändern. So kann der Agent besser entscheiden, wann er Nutzerbestätigungen anfordern soll.

Tools sorgfältig bereitstellen

Die WebMCP-API document.modelContext.registerTool stellt die Tool-Funktionalität nur für Agenten bereit. Standardmäßig können andere Websites oder ursprungsübergreifende iFrames Ihre Tools nicht beobachten oder mit ihnen interagieren.

Mit der Option exposedTo in registerTool können Sie den Zugriff auf Ihr Tool für ein Array bestimmter, sicherer Ursprünge gewähren. Dadurch wird Ihr Tool für diese Ursprünge bereitgestellt, wenn es auf Ihrer Website eingebettet ist und wenn Ihre Website auf diesem Ursprung eingebettet ist.

// https://partner.org

await document.modelContext.registerTool({
  name: 'my_shared_tool',
  description: 'Shared across origins',
  // ...
}, {
  exposedTo: ['https://trusted.com', 'https://example.com']
});

Stellen Sie Ihre Tools nur für Ursprünge bereit, denen Sie vertrauen. Das ist besonders wichtig, wenn Tools Nutzerdaten verwalten oder sich anderweitig auf den Nutzer auswirken.

  • Ein Tool mit Lesezugriff, z. B. getFavoriteProducts, kann Informationen über einen Nutzer preisgeben. Sie sollten diese Tools nur für Websites bereitstellen, mit denen Sie diese Daten sonst direkt teilen würden.
  • Tools mit Lese- und Schreibzugriff führen Aktionen im Namen eines Nutzers aus. Diese Tools sollten nur für Ursprünge bereitgestellt werden, denen Sie vertrauen, wenn sie im Namen Ihres Nutzers handeln. Beispielsweise möchten Sie postComment möglicherweise für trustedExample.com bereitstellen, aber nicht für evilExample.com.

Zeichenbudgets festlegen

Um die Leitplanken für Agenten nicht zu überschreiten, sollten Sie prägnante Toolbeschreibungen und -ausgaben verfassen. Wir empfehlen die folgenden Zeichenlimits, um bessere Ergebnisse zu erzielen:

  • 500 Zeichen pro Toolbeschreibung
  • 150 Zeichen pro Parameterbeschreibung
  • 30 Zeichen pro Toolname und Parametername
  • 1.500 Zeichen pro Toolausgabe

Es ist wahrscheinlich, dass es bei den Agenten einige Unterschiede gibt. Möglicherweise müssen Sie Ihre Zeichenbudgets anhand des Nutzerfeedbacks anpassen.

Nächste Schritte

Wir forschen weiter und arbeiten daran, eine sichere Infrastruktur für das agentische Web zu schaffen. So wird beispielsweise derzeit über die Einwilligungsverwaltung zwischen den Parteien diskutiert. Der Spezifikationsentwurf enthält requestUserInteraction() , um bei der Toolausführung asynchron eine Nutzereingabe anzufordern.

Wie möchten Sie WebMCP in Ihrer Anwendung implementieren? Haben Sie weitere Bedenken, z. B. in Bezug auf die Sicherheit? Wenn Sie sich für den WebMCP-Ursprungstest registrieren, möchten wir Ihre Erfahrungen erfahren:

Wenn Sie einen Agenten entwickeln, empfehlen wir Ihnen, die Sicherheitsüberlegungen für Agenten für WebMCP zu lesen.