{
  "version": "1.0",
  "site": "https://viralmint.net",
  "_about": "WebMCP (Web Model Context Protocol — W3C 2026 draft) action discovery for the ViralMint portal at /app/*. Lets AI browsing agents (Claude in Chrome, Edge Copilot, Perplexity browser) discover and complete user-facing tasks programmatically. Declarative actions are HTML attributes on real <form> elements; imperative actions register dynamically via navigator.mcpActions.register() once the React shell hydrates.",
  "actions": [
    {
      "id": "login",
      "name": "Sign in to ViralMint",
      "description": "Authenticate with an existing ViralMint account using email and password.",
      "method": "declarative",
      "endpoint": "/app/login",
      "parameters": {
        "required": ["email", "password"]
      }
    },
    {
      "id": "register",
      "name": "Create a ViralMint account",
      "description": "Register a new ViralMint account. Includes a small daily free allowance with no card required; users can later top up prepaid USD balance via Stripe.",
      "method": "declarative",
      "endpoint": "/app/register",
      "parameters": {
        "required": ["email", "password"],
        "optional": ["displayName"]
      }
    },
    {
      "id": "create-checkout",
      "name": "Start a top-up checkout",
      "description": "Initiate a Stripe one-time payment to add prepaid USD balance to the user's ViralMint account. Returns a Stripe Checkout URL the user must visit to complete payment with their card (agents cannot complete the card payment themselves). Available packages: starter ($5 → $5 balance), pro ($30 → $35 balance, +$5 bonus), max ($100 → $125 balance, +$25 bonus).",
      "method": "imperative",
      "availability": "authenticated",
      "parameters": {
        "required": ["package_id"],
        "enum": {"package_id": ["starter", "pro", "max"]}
      }
    },
    {
      "id": "generate-image",
      "name": "Generate an AI image",
      "description": "Generate a single image with Nano Banana (Gemini 2.5 Flash Image) from a text prompt. Cost: $0.01 per image, billed atomically against the user's prepaid balance. Returns the image as a data URL.",
      "method": "imperative",
      "availability": "authenticated",
      "parameters": {
        "required": ["prompt"],
        "optional": ["aspect_ratio"],
        "enum": {"aspect_ratio": ["9:16", "16:9", "1:1", "4:5", "3:4"]}
      }
    },
    {
      "id": "generate-music",
      "name": "Generate AI background music",
      "description": "Generate an instrumental music track with Lyria 3 Pro. Async submit + poll; ~30-90s wall time. Cost: $0.12 per song, billed atomically. Returns a presigned S3 URL valid for 5 minutes.",
      "method": "imperative",
      "availability": "authenticated",
      "parameters": {
        "required": ["genre"],
        "optional": ["duration_seconds"],
        "enum": {"genre": ["lofi", "cinematic", "upbeat", "ambient", "corporate", "jazz", "hiphop", "classical", "edm", "acoustic", "rnb", "rock"]}
      }
    }
  ]
}
