Diese Website ist bedienbar, nicht nur lesbar.
Fast jede Marketing-Website in dieser Kategorie ist eine Wand, die ein Agent abfotografieren und erraten muss. Dieses übergibt stattdessen eine typisierte Werkzeugliste über WebMCP im Browser und über JSON-RPC überall sonst. Es ist das eigene Argument des Produkts, ausgeführt von der Marketing-Website.
Ihr Browser hat navigator.modelContext noch nicht ausgeliefert. Die meisten nicht, ab 2026. Dieselben Werkzeuge sind über JSON-RPC unter /api/mcp verfügbar, das überhaupt keine Browserunterstützung benötigt.
list_bag_modulesschreibgeschütztList every capability module AgentBag ships, each with a published status (live, beta, or bench) and the caveat that goes with it. Optionally filter by status. Use this first to understand what the product actually does.
example: {"status":"bench"}
get_bag_moduleschreibgeschütztFetch the full published entry for one module: what it does, why it matters, how it works, its status caveat, and its FAQs. Use after list_bag_modules when you need depth on a specific capability.
example: {"slug":"trustgraph"}
search_bagschreibgeschütztAnswer a natural-language question strictly from the published capability ledger, returning citations to the modules the answer came from. Declines rather than speculating when the ledger does not cover the question.
example: {"question":"What stops one agent reading another agent data?"}
check_workspace_addressschreibgeschütztTurn a proposed team name into the tenant subdomain it would become, and report whether that label is usable. Does not reveal whether an address is already taken; that is deliberate.
example: {"name":"Acme Robotics"}
answer_faqschreibgeschütztAnswer a common question about AgentBag in machine form: a terse declarative answer plus a flat object of primitive-valued facts you can assert against without parsing prose. Prefer this over search_bag for questions about pricing, limits, privacy, tenancy or how to evaluate the product. Call with no arguments to list every question.
example: {"question":"what is not built yet"}
get_pricing_statusschreibgeschütztReport the current pricing position honestly, including the fact that billing is deliberately disarmed and no numbers are published yet.
example: {}
- hier nicht ausführbar
join_waitlistzustandsveränderndSubmit an email address to the AgentBag waitlist, optionally reserving a workspace address. This sends data on the user behalf; confirm with them before calling it.
example: {"email":"you@example.com","workspace":"acme"}
Alles, was eine Maschine braucht.
/api/mcpMCP JSON-RPC 2.0. POST tools/list, then tools/call./.well-known/mcp.jsonMCP discovery: find the endpoint from the origin./.well-known/agent-actions.jsonAction registry with schemas and examples./api/modulesThe capability ledger as JSON./llms.txtThe whole site as facts, for answer engines.
Im Terminal ausprobieren
curl -s https://agentbag.ai/api/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
curl -s https://agentbag.ai/api/mcp \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call",
"params":{"name":"list_bag_modules","arguments":{"status":"bench"}}}'Ein Script-Tag. Deine Website hat einen Agenten.
Füge eine einzige Zeile JavaScript auf einer beliebigen Seite ein. In der Ecke erscheint ein gebrandeter Launcher. Wenn deine Besucher darauf klicken, sprechen sie mit deinem veröffentlichten Agenten in einem Sandbox-Panel. Keine Iframes zu verwalten, keine Authentifizierung einzurichten, kein Build-Schritt. Der Agent liest deine Seite, antwortet im Kontext und kann bei Aktivierung sogar mit deiner Benutzeroberfläche interagieren.
In deine Website einfügen
<script src="https://agentbag.ai/embed.js" data-agent="<your-agent-folder-id>" data-accent="#5f6f3c" data-launcher="Chat with us" data-voice="on" data-page-context="on" ></script>
Durch Shadow DOM isoliert
Das Widget wird innerhalb eines Shadow-DOM-Roots gerendert. Dein CSS kann das Widget nicht beeinflussen und umgekehrt. Keinerlei Style-Konflikte auf irgendeiner Website.
Sandboxed Iframe
Das Chat-Panel lädt in einer strengen Sandbox. Keine Top-Navigation, keine Datenlecks bei Anmeldedaten. Gast-Token bleiben im Frame. Deine Host-Seite wird niemals offengelegt.
Verzögert geladen
Der Iframe wird erst erstellt, wenn der Benutzer auf den Launcher klickt. Keine Auswirkungen auf deine Ladezeit. Keine versteckten Netzwerkanfragen, bis tatsächlich jemand chatten möchte.
Konfiguration
- Your published agent folder ID. Required.
data-agent"<folder-id>" - Brand color for the launcher button and accents.
data-accent"#5f6f3c" - Custom text on the launcher pill. Up to 40 characters.
data-launcher"Chat with us" - Enable voice input. Users can speak instead of type.
data-voice"on" - Which corner the launcher appears in. Default: right.
data-position"left" | "right" - Color scheme for the chat panel.
data-theme"light" | "dark" | "auto" - Let the agent read visible page content to give contextual answers.
data-page-context"on" - Let the agent interact with the page: click, scroll, highlight elements.
data-page-actions"on" - CSS selector scoping which content the agent can read. Default: main or article.
data-context-selector"main"
Wie es unter der Haube funktioniert
- 1. Loader läuft auf deiner Seite. Er erstellt einen Shadow-DOM-Host und zeichnet den Launcher-Button. Noch kein Iframe, keine Netzwerkkosten.
- 2. Benutzer klickt auf den Launcher. Der Iframe wird erstellt mit
sandboxEinschränkungen und von unserem Origin geladen. Die Gastsitzung beginnt. - 3. Seitenkontext fließt ein (Opt-in). Wenn
data-page-context="on", extrahiert der Loader sichtbaren Text von deiner Seite und sendet ihn an den Agenten für kontextbezogene Antworten. - 4. Seitenaktionen steuern deine UI (Opt-in). Wenn
data-page-actions="on", kann der Agent Elemente auf deiner Seite hervorheben, dorthin scrollen und anklicken, um Benutzer zu führen.