This site is operable, not just readable.
Almost every marketing site in this category is a wall an agent has to screenshot and guess at. This one hands over a typed tool list instead, through WebMCP in the browser, and over JSON-RPC everywhere else. It is the product's own argument, performed by the marketing site.
Your browser has not shipped navigator.modelContext yet. Most have not, as of 2026. The same tools are available over JSON-RPC at /api/mcp, which needs no browser support at all.
list_bag_modulesread-onlyList 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_moduleread-onlyFetch 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_bagread-onlyAnswer 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_addressread-onlyTurn 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_faqread-onlyAnswer 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_statusread-onlyReport the current pricing position honestly, including the fact that billing is deliberately disarmed and no numbers are published yet.
example: {}
- not runnable here
join_waitlistside-effectingSubmit 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"}
Everything a machine needs.
/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.
try it from a terminal
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"}}}'