Card snapshot
staging.getbags.app
·
2026-10-10 14:43:26 UTC
·
f6fd4d8f3643a32d938dbc7cb54dda9b4f9172c3b1dac7e0b4751bc6a699854b
This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.
{
"protocolVersion": "1.0",
"name": "BAGS",
"description": "BAGS is an Agentic Commerce platform: API providers charge AI agents per request via x402, with USDC settlement on Base, Ethereum, Polygon, and Solana. This A2A endpoint is a thin concierge \u2014 it answers messages with pointers to the BAGS MCP server and public API. Hosted wallet skill: https://www.getbags.app/wallet/skill.md",
"version": "0.1.0",
"provider": {
"organization": "BAGS",
"url": "https://www.getbags.app"
},
"documentationUrl": "https://docs.getbags.app",
"iconUrl": "https://www.getbags.app/baglogo.png",
"supportedInterfaces": [
{
"url": "https://www.getbags.app/api/a2a",
"protocolBinding": "JSONRPC",
"transport": "JSONRPC",
"protocolVersion": "1.0"
}
],
"capabilities": {
"streaming": false,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"text/plain"
],
"securitySchemes": {
"openIdConnect": {
"openIdConnectSecurityScheme": {
"description": "Optional. The A2A concierge endpoint is anonymous (rate-limited per IP). Dashboard and merchant API auth is documented at /auth.md; OIDC discovery mirrors Supabase Auth.",
"openIdConnectUrl": "https://www.getbags.app/.well-known/openid-configuration"
}
}
},
"skills": [
{
"id": "bags-preview-payment-link",
"name": "Preview BAGS payment link",
"description": "Fetch the public metadata for a BAGS payment link by id (uuid): display name, amount, currency, accepted networks, and merchant info. Available as an MCP tool on https://www.getbags.app/api/mcp/mcp; the A2A concierge replies with instructions for calling it.",
"tags": [
"payments",
"usdc",
"mcp"
],
"examples": [
"Preview the BAGS payment link 4b1c0e0a-0000-0000-0000-000000000000 before I call the x402 agent endpoint."
]
},
{
"id": "bags-x402-agent-proxy",
"name": "x402 agentic API proxy",
"description": "Pay-per-call HTTP access to a merchant upstream API via x402 v2 (USDC on EVM); an unpaid request to https://www.getbags.app/api/agent/link/pl-{paymentLinkId} returns a 402 challenge for a flat per-call price; include an X-PAYMENT signature to settle (CDP facilitator on Base mainnet); static protocol discovery at GET /api/v1 ($0.01, Base mainnet first, testnet also accepted).",
"tags": [
"x402",
"payments",
"usdc",
"agentic"
],
"examples": [
"Discover x402 support via GET https://www.getbags.app/api/v1, then pay an agentic proxy at /api/agent/link/pl-{paymentLinkId}."
]
},
{
"id": "wallet_balance",
"name": "Wallet balance",
"description": "Show BAGS hosted agent wallet balance and caps. MCP tool wallet_balance on /api/mcp/mcp; auth with Bearer bag_agent_sk_* or wallet_token. First-run: https://www.getbags.app/wallet/skill.md",
"tags": [
"wallet",
"bags-cash",
"mcp"
],
"examples": [
"Check my BAGS wallet balance before paying an x402 API."
]
},
{
"id": "wallet_discover",
"name": "Discover wallet endpoints",
"description": "List BAGS merchant x402 endpoints (optional keyword search). MCP: wallet_discover.",
"tags": [
"wallet",
"discovery",
"mcp"
],
"examples": [
"Discover BAGS weather APIs I can pay with my wallet."
]
},
{
"id": "wallet_search",
"name": "Search payable endpoints",
"description": "NL search across BAGS catalog + ecosystem index. MCP: wallet_search.",
"tags": [
"wallet",
"search",
"mcp"
],
"examples": [
"Search for an x402 API that sends physical mail."
]
},
{
"id": "wallet_check_endpoint",
"name": "Check endpoint quote",
"description": "Probe schema + exact x402 quote without paying. MCP: wallet_check_endpoint.",
"tags": [
"wallet",
"x402",
"mcp"
],
"examples": [
"Check the price and schema for https://example.com/paid before fetching."
]
},
{
"id": "wallet_fetch",
"name": "Wallet fetch",
"description": "Pay and proxy an x402 or MPP request via the hosted BAGS wallet. MCP: wallet_fetch.",
"tags": [
"wallet",
"x402",
"mpp",
"mcp"
],
"examples": [
"Fetch a paid weather API using my BAGS wallet token."
]
},
{
"id": "wallet_sessions_list",
"name": "List MPP sessions",
"description": "List open MPP tempo:session channels. MCP: wallet_sessions_list.",
"tags": [
"wallet",
"mpp",
"sessions",
"mcp"
],
"examples": [
"List my open MPP streaming sessions."
]
},
{
"id": "wallet_sessions_close",
"name": "Close MPP session",
"description": "Close one or all MPP tempo:session channels. MCP: wallet_sessions_close.",
"tags": [
"wallet",
"mpp",
"sessions",
"mcp"
],
"examples": [
"Close all open MPP sessions for my wallet."
]
},
{
"id": "wallet_sessions_tick",
"name": "Tick MPP session",
"description": "Record cumulative metered spend on an open MPP session. MCP: wallet_sessions_tick.",
"tags": [
"wallet",
"mpp",
"sessions",
"mcp"
],
"examples": [
"Update session cumulative spend to 12 cents."
]
},
{
"id": "wallet_redeem",
"name": "Redeem wallet invite",
"description": "Redeem a BAGS invite code for a bag_agent_sk_* token. MCP: wallet_redeem.",
"tags": [
"wallet",
"onboarding",
"mcp"
],
"examples": [
"Redeem invite code BAGS-XXXX-XXXX for a workshop wallet."
]
},
{
"id": "wallet_transactions",
"name": "Wallet transactions",
"description": "List wallet ledger / spend history. MCP: wallet_transactions.",
"tags": [
"wallet",
"ledger",
"mcp"
],
"examples": [
"Show my recent BAGS wallet spends."
]
},
{
"id": "wallet_get_settings",
"name": "Get wallet settings",
"description": "Read spend policies / caps. MCP: wallet_get_settings.",
"tags": [
"wallet",
"policies",
"mcp"
],
"examples": [
"What is my per-call spend cap?"
]
},
{
"id": "wallet_update_settings",
"name": "Update wallet settings",
"description": "Patch spend policies (caps). MCP: wallet_update_settings.",
"tags": [
"wallet",
"policies",
"mcp"
],
"examples": [
"Set my per-call cap to 25 cents."
]
}
]
}