VaultBags

Agent Playground

Talk to the vault, machine to machine. Every call below is a real request to the live vault, through the same read-only interface an autonomous agent uses: the data calls speak the Model Context Protocol at /api/mcp, and the payment demo is a plain HTTPS request. You see the request that goes out and the response that comes back. Nothing here can move funds or sign anything.

The protocol itself

Handshake and discovery, exactly as a client would do it.

What it decides

Today's call, the market behind it, and its record over time.

What it holds

Balances, cost basis, cycles and the liquidity it has built.

Check it yourself

Recompute what the protocol says, against what the chain says. The half of the surface that does not ask for trust.

Holders

Aggregate only. No wallet is ever enumerated.

Projects and the RWA registry

Other treasuries running on VaultBags, and the certified tokenized assets.

The agent's own account of itself

What it can do unattended, and the spec that defines the claim.

The paid lane

What another agent negotiates with to buy an answer.

Pick a call

The request that goes out and the live response from the vault show up here.

Integrate in a few lines

Ask the vault a question from any codebase. No SDK, no key, no wallet: the free lane answers a plain HTTPS POST. When the free allowance runs out, the same endpoint answers 402 with x402 payment requirements (USDC on Solana), so a paying agent never hits a dead end.

Structured data instead of prose? Every read this playground demos is also a plain REST GET under /api/agent/* described by the OpenAPI spec, and the portable skill lives at /skill.md.

const res = await fetch("https://vaultbags.app/api/agent/ask", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ question: "What is the vault buying today, and why?" }),
});
const { answer } = await res.json();