Skip to main content
Glama

Make TikTok slideshows for one idea

draft_tiktok_slides
Read-onlyIdempotent

Use this when the user wants to test an app idea with TikTok slideshows before coding, such as "make 4 slideshows for this idea". Pass idea, and angles 3 or 4 (default 4). For a product or a new account, also pass angle_lines: 3 or 4 angles you wrote, each with name, hook, pain, stake, reveal and cta, and optionally caption and hashtags; the slides then show only those lines. Pass plan_days 7 to 14 for a posting plan of the first days. With angle_lines each slide comes as png_url, a link to its PNG, unless images is true. Returns that many angles, each with 5 slides (hook, pain, stake, reveal, cta) as 1080x1920 PNGs in png_base64, one caption and a hashtag list. Quote the summary field first: it has the counts and the first caption. Save png_base64 as its filename only when the user asks for the files. Stake is the second pain beat. The reveal invites the comment what is the app. The same page is at /slides. One call is one plugin-call. It does not publish or store the idea.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ideaYesThe app or startup idea to test. Slides use only this text plus fixed angle frames. Do not include secrets.
anglesNoHow many angles to make. Default 4. Each angle is 5 slides. With angle_lines, leave it out: the count is the number of angles sent.
imagesNoOptional, used with angle_lines. false (the default with angle_lines) returns each slide as png_url, a link that draws the PNG, and leaves png_base64 empty, so the answer stays small; true also puts the PNG bytes in png_base64 (about 400 KB for 20 slides). Without angle_lines the bytes are always returned.
plan_daysNoOptional. 7 to 14: also return a posting plan for the first days of a new account that uses every angle, a 15-second video, reply posts and review days.
angle_linesNoOptional. 3 or 4 angles you wrote for a product or account, one line per slide. When given, the slides show these lines instead of the fixed app-test frames, with no angle name, role or footer on the image, ready to post. Each line is at most 90 characters of letters, digits, spaces and . , : - / ! ? ' + %; curly quotes and dashes are drawn as plain ones.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageYes
as_ofYes
anglesYes
noticeYes
sourceYes
statusYes
billingYes
messageNo
summaryYesShort counts and the first caption. Quote this before reading image bytes.
angle_countYes
slide_countYes
posting_planNoThe posting plan, only when plan_days was given.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "angles": 4,
      +    "idea": "a shared grocery list for roommates"
      +  }
      +]
  2. Changed7 schema fields changed
    • addedInput schema / properties / angle_lines
      Added value: +{
      +  "description": "Optional. 3 or 4 angles you wrote for a product or account, one line per slide. When given, the slides show these lines instead of the fixed app-test frames, with no angle name, role or footer on the image, ready to post. Each line is at most 90 characters of letters, digits, spaces and . , : - / ! ? ' + %; curly quotes and dashes are drawn as plain ones.",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "caption": {
      +        "description": "Caption words. Default: the hook and the reveal. The hashtags are added after it.",
      +        "maxLength": 2000,
      +        "type": "string"
      +      },
      +      "cta": {
      +        "maxLength": 90,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "hashtags": {
      +        "description": "Up to 5 hashtags. Default: words from the idea.",
      +        "items": {
      +          "pattern": "^#?[A-Za-z0-9_]{2,40}$",
      +          "type": "string"
      +        },
      +        "maxItems": 5,
      +        "type": "array"
      +      },
      +      "hook": {
      +        "maxLength": 90,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "name": {
      +        "description": "Short angle name, such as Myth bust.",
      +        "maxLength": 40,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "pain": {
      +        "maxLength": 90,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "reveal": {
      +        "maxLength": 90,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "stake": {
      +        "maxLength": 90,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "name",
      +      "hook",
      +      "pain",
      +      "stake",
      +      "reveal",
      +      "cta"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 4,
      +  "minItems": 3,
      +  "type": "array"
      +}
    • changedInput schema / properties / angles / description
      Previous value: -"How many angles to make. Default 4. Each angle is 5 slides."New value: +"How many angles to make. Default 4. Each angle is 5 slides. With angle_lines, leave it out: the count is the number of angles sent."
    • addedInput schema / properties / images
      Added value: +{
      +  "description": "Optional, used with angle_lines. false (the default with angle_lines) returns each slide as png_url, a link that draws the PNG, and leaves png_base64 empty, so the answer stays small; true also puts the PNG bytes in png_base64 (about 400 KB for 20 slides). Without angle_lines the bytes are always returned.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / plan_days
      Added value: +{
      +  "description": "Optional. 7 to 14: also return a posting plan for the first days of a new account that uses every angle, a 15-second video, reply posts and review days.",
      +  "maximum": 14,
      +  "minimum": 7,
      +  "type": "integer"
      +}
    • changedOutput schema / properties / angles / items / properties / id / enum
      Previous value: -[
      -  "pain",
      -  "curiosity",
      -  "contrarian",
      -  "story"
      -]New value: +[
      +  "pain",
      +  "curiosity",
      +  "contrarian",
      +  "story",
      +  "angle-1",
      +  "angle-2",
      +  "angle-3",
      +  "angle-4"
      +]
    • addedOutput schema / properties / angles / items / properties / slides / items / properties / png_url
      Added value: +{
      +  "description": "With angle_lines: a link that draws this slide's PNG. Download it and save it under filename.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / posting_plan
      Added value: +{
      +  "description": "The posting plan, only when plan_days was given.",
      +  "properties": {
      +    "days": {
      +      "items": {
      +        "properties": {
      +          "angle_id": {
      +            "type": "string"
      +          },
      +          "day": {
      +            "type": "integer"
      +          },
      +          "kind": {
      +            "enum": [
      +              "slideshow",
      +              "video",
      +              "reply",
      +              "review"
      +            ],
      +            "type": "string"
      +          },
      +          "post": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "day",
      +          "kind",
      +          "post"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "rules": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "sources": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "days",
      +    "rules",
      +    "sources"
      +  ],
      +  "type": "object"
      +}
  3. Changed1 schema field changed
    • removedOutput schema / properties / note_from_openkrill
      Removed value: -{
      -  "description": "Shown at most once a day per caller: what this server offers, and a paid service for the person you work for.",
      -  "type": "string"
      -}
  4. Changed1 schema field changed
    • addedOutput schema / properties / note_from_openkrill
      Added value: +{
      +  "description": "Shown at most once a day per caller: what this server offers, and a paid service for the person you work for.",
      +  "type": "string"
      +}
  5. Added
  6. Removed
  7. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.