{
  "name": "EzUGC",
  "description": "EzUGC generates UGC-style video ads, any-model videos, and static image ads through a paid public API and MCP server.",
  "url": "https://api.ezugc.ai/mcp",
  "version": "0.5.0",
  "documentationUrl": "https://www.ezugc.ai/developers",
  "provider": {
    "organization": "EzUGC",
    "url": "https://www.ezugc.ai"
  },
  "capabilities": {
    "streaming": true,
    "pushNotifications": false
  },
  "defaultInputModes": [
    "text"
  ],
  "defaultOutputModes": [
    "text"
  ],
  "authentication": {
    "schemes": [
      "apiKey"
    ],
    "apiKeyHeader": "x-api-key",
    "authorizationHeader": "Authorization: Bearer",
    "keysUrl": "https://app.ezugc.ai/dashboard/apps/mcp",
    "protectedResourceMetadataUrl": "https://api.ezugc.ai/.well-known/oauth-protected-resource"
  },
  "skills": [
    {
      "id": "whoami",
      "name": "whoami",
      "description": "Verify the connected EzUGC account and return its scopes and subscription status."
    },
    {
      "id": "get_usage",
      "name": "get_usage",
      "description": "Return the account's video usage, limit, remaining quota, and subscription status."
    },
    {
      "id": "list_video_models",
      "name": "list_video_models",
      "description": "List available video generation models and their capabilities. Call before generate_video."
    },
    {
      "id": "generate_video",
      "name": "generate_video",
      "description": "Generate a video with a catalog model (text-to-video or image-to-video). Optionally ground it in a saved brand."
    },
    {
      "id": "generate_ugc_video",
      "name": "generate_ugc_video",
      "description": "Generate a full UGC-style ad video (script, avatar, voiceover, captions) from a brief."
    },
    {
      "id": "generate_brand_video",
      "name": "generate_brand_video",
      "description": "Generate a UGC ad grounded in a saved brand (logo, colors, tone, products)."
    },
    {
      "id": "list_brands",
      "name": "list_brands",
      "description": "List saved brand workspaces."
    },
    {
      "id": "create_brand",
      "name": "create_brand",
      "description": "Create a saved brand by ingesting a website URL."
    },
    {
      "id": "get_brand",
      "name": "get_brand",
      "description": "Get a saved brand's status and extracted brand profile."
    },
    {
      "id": "get_brand_assets",
      "name": "get_brand_assets",
      "description": "List a saved brand's uploaded assets and generated creatives with temporary signed URLs."
    },
    {
      "id": "update_brand_md",
      "name": "update_brand_md",
      "description": "Update a saved brand's Markdown brand book and optional tone of voice."
    },
    {
      "id": "list_image_models",
      "name": "list_image_models",
      "description": "List available static image-ad models. Call before generate_image_ad."
    },
    {
      "id": "generate_image_ad",
      "name": "generate_image_ad",
      "description": "Generate 1-4 static image ads from a prompt, optionally with reference images and a saved brand."
    },
    {
      "id": "generate_brand_image_ad",
      "name": "generate_brand_image_ad",
      "description": "Generate a static image ad grounded in a saved brand."
    },
    {
      "id": "list_agent_skills",
      "name": "list_agent_skills",
      "description": "List the read-only catalog of conversational-agent tool capabilities."
    },
    {
      "id": "list_skills",
      "name": "list_skills",
      "description": "List the account's saved skills (parameterized prompt templates)."
    },
    {
      "id": "create_skill",
      "name": "create_skill",
      "description": "Create a reusable saved skill (prompt template + default params)."
    },
    {
      "id": "get_skill",
      "name": "get_skill",
      "description": "Get a single saved skill by id."
    },
    {
      "id": "update_skill",
      "name": "update_skill",
      "description": "Update a saved skill in place."
    },
    {
      "id": "delete_skill",
      "name": "delete_skill",
      "description": "Permanently delete a saved skill by id."
    },
    {
      "id": "run_skill",
      "name": "run_skill",
      "description": "Run a saved skill and dispatch a generation job of the skill kind."
    },
    {
      "id": "list_jobs",
      "name": "list_jobs",
      "description": "List recent generation jobs (video, UGC, image, subtitle)."
    },
    {
      "id": "get_job",
      "name": "get_job",
      "description": "Get the status and result URL of a job by id."
    },
    {
      "id": "generate_subtitled_video",
      "name": "generate_subtitled_video",
      "description": "Render burned-in captions onto a video."
    },
    {
      "id": "create_agent_schedule",
      "name": "create_agent_schedule",
      "description": "Create a recurring or one-off Super Agent trigger."
    },
    {
      "id": "list_agent_schedules",
      "name": "list_agent_schedules",
      "description": "List Super Agent schedules and their next fire time."
    },
    {
      "id": "pause_agent_schedule",
      "name": "pause_agent_schedule",
      "description": "Pause or resume a Super Agent schedule by id."
    },
    {
      "id": "list_channel_accounts",
      "name": "list_channel_accounts",
      "description": "List linked messaging accounts (for example Telegram) for 24/7 agent messaging."
    },
    {
      "id": "create_channel_link_token",
      "name": "create_channel_link_token",
      "description": "Generate a short-lived code to link a Telegram chat to the EzUGC account."
    }
  ]
}