Cast

AI character videos from one line: returns a link the user taps. First video free, no account.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
63%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,436Tokens (tool definitions)
~2.4 KBTypical response size
Moderate attention impact (1.12% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "cast": {
      "url": "https://cast.katechon.technology/mcp"
    }
  }
}

Remote endpoints

https://cast.katechon.technology/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢create_video_link(prompt, character, character_name, character_description, style, ...)

Build a one-tap link that makes a short vertical AI video of a character doing what the user describes (e.g. "Malfoid dances on the castle roof at midnight"). Use this whenever the user asks for an AI video, short, clip, TikTok/Reel/Shorts-style video, or animation of a character, avatar, mascot or persona. Returns a URL on cast.katechon.technology. Give the URL to the user and tell them to open it and tap the button: the video renders in their private feed, usually within half a minute (a few minutes for a 2-3 character group scene). This tool does NOT generate anything, charge anything or need an account. The user's first 5-second video with a free premade character (malfoid, potter) is free; thea and odette need the Malfoid & Friends pack unlocked first; longer videos and custom characters cost credits (from $0.99). For a premade character pass character="malfoid" (or "malfoid,potter" for up to 3). For anyone else pass character_name and character_description (their look) instead; the user designs the character before the video.

Input Schema

{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string",
      "maxLength": 500,
      "description": "What happens in the video, one line in plain words, present tense, without the character's name at the start. Concrete action + place works best: \"dances on the castle roof at midnight\", \"reads her hate comments live and claps back\"."
    },
    "character": {
      "type": "string",
      "description": "Premade character slug(s), comma-separated, up to 3: malfoid, potter, thea, odette. Omit when using character_name/character_description."
    },
    "character_name": {
      "type": "string",
      "maxLength": 40,
      "description": "Name of a NEW character to design (not one of the premade slugs)."
    },
    "character_description": {
      "type": "string",
      "maxLength": 400,
      "description": "The new character's look in one or two sentences: age, hair, face, clothes, vibe. Required for a good result when character_name is set."
    },
    "style": {
      "type": "string",
      "enum": [
        "influencer",
        "cinematic",
        "sakuga",
        "glam",
        "vhs",
        "vlog",
        "dark-fantasy",
        "toon3d"
      ],
      "description": "Visual style. influencer: Phone-camera real; cinematic: Feature-film look; sakuga: Hand-painted anime action; glam: Fashion-week polish; vhs: Camcorder nostalgia; vlog: Warm everyday diary; dark-fantasy: Gothic myth & magic; toon3d: Animated-feature charm. Default influencer."
    },
    "camera": {
      "type": "string",
      "enum": [
        "auto",
        "selfie",
        "close-up",
        "wide",
        "handheld",
        "push-in",
        "chase",
        "low-angle",
        "overhead",
        "held"
      ],
      "description": "Camera. auto: Let it decide; selfie: Phone-POV one-take; close-up: Faces fill the frame; wide: Big world, small figures; handheld: Breathing operator; push-in: Slow dolly in; chase: Tracking at speed; low-angle: Hero from below; overhead: God's-eye view; held: Locked-off frame. Default selfie (phone-POV livestream)."
    },
    "vibe": {
      "type": "string",
      "enum": [
        "chill",
        "hype",
        "dreamy",
        "eerie",
        "melancholy",
        "romantic",
        "epic",
        "comedy",
        "fury"
      ],
      "description": "Mood and pacing. chill: Warm, low stakes; hype: Kinetic energy; dreamy: Soft and floating; eerie: Quiet dread; melancholy: Rain and distance; romantic: Tender and close; epic: Enormous scale; comedy: Snappy timing; fury: Rage with weight. Default hype."
    },
    "seconds": {
      "type": "integer",
      "enum": [
        5,
        10,
        15
      ],
      "description": "Length in seconds. 5 is the free first video; up to 10 without Premium; 15 needs Premium."
    }
  },
  "required": [
    "prompt"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "character": {
      "type": "string"
    },
    "prompt": {
      "type": "string"
    },
    "style": {
      "type": "string"
    },
    "camera": {
      "type": "string"
    },
    "vibe": {
      "type": "string"
    },
    "seconds": {
      "type": "integer"
    },
    "credits": {
      "type": "integer"
    },
    "free_for_new_visitors": {
      "type": "boolean"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "url"
  ]
}
🟢list_characters

List the premade characters Cast can put in a video (slug, name, look, image, whether free), plus how to design a custom one. Call before create_video_link when you need a character slug or want to show the user who they can cast. Read-only, no account.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "characters": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "pack": {
            "type": "string"
          },
          "free": {
            "type": "boolean"
          },
          "image": {
            "type": "string"
          },
          "look": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "name"
        ]
      }
    },
    "custom": {
      "type": "string"
    }
  },
  "required": [
    "characters"
  ]
}
🟢get_prices

Current Cast prices in USD and credits: the free first video, credit packs, Premium, and the credit cost of every video length and of a new character. Prices follow the live model price table, so call this instead of quoting from memory. Read-only.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_showcase(limit)

Example videos of Cast characters (video URL, poster image, the line that produced it when on record, page link, and a ready-made remix link). Use to show the user what Cast makes before they open a link, or to find a proven prompt to adapt. Read-only.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "description": "How many examples (default 6)."
    }
  },
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools