← WebMCP Directory

deskmate-cc.vercel.app

deskmate-cc.vercel.app

live Unverified (seed import) Media & Personal 28 tools imperative implementation

Deskmate

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 16 · Act 12 · Transact 0 · Score: Not yet scored

Tool inspector

propose_layer

act imperative

Propose a motion graphic over the cut. It appears at once on the timeline as a dashed, unconfirmed layer that previews live, and it is not in the video until the editor accepts it. Choose from: title_card: A full-frame headline over a dimmed wash, with an optional line under it. For an opening or a chapter break. lower_third: A name and a role on a panel at the lower left. For introducing a person, a place or a tool. caption_pop: Words appearing one at a time along the bottom, in time with speech. Pass word timings from the transcript and each word lands on the frame it is said. bullet_list: A titled list whose rows arrive one at a time. For anything you say as 'three things' or 'first, second, third'. comparison_cards: Two or three bordered cards side by side, each with a heading and a line. For 'before and after', 'this versus that', or a set of options. process_flow: Numbered steps joined by a line, revealed one at a time. For a process, a pipeline, or anything you narrate as a sequence. stat_badge: A number that counts up from zero, with a label under it. For a figure you say out loud and want to land. callout_arrow: A label with an arrow pointing at a spot in the frame. For a screen recording, or anything you need someone to look at. progress_bar: A bar filling across the bottom over its own duration, with an optional label. For a walkthrough with steps, or a chapter you want a sense of the length of. code_card: Monospaced lines on a dark panel, arriving one at a time. For a command, a snippet, a file tree, or a stack you are listing out. quote_card: An oversized quote mark, the line, and who said it. For something worth attributing, or your own sentence worth repeating on screen. text: Free text you control completely: typeface, size, colour, alignment, tracking, a plate behind it, an outline, and how it enters and leaves. Use this when none of the preset graphics fit, or when the styling is the point. shape: A rectangle, ellipse, pill, triangle, line, arrow,…

Input schema

PropertyTypeRequiredDescription
component string yes —
text string no title_card, lower_third, caption_pop, bullet_list, comparison_cards, process_flow, stat_badge, callout_arrow, progress_bar, code_card, quote_card, text only. The figure, with its furniture: '40%', '$1.2M', '3×'. The number inside is what counts up.
subtext string no title_card, lower_third, stat_badge, quote_card only. The role, the title, the one-line description.
eyebrow string no title_card only. A small tracked label above it: a chapter number, a section name.
font string no title_card, lower_third, caption_pop, bullet_list, stat_badge, quote_card, text only. The headline's typeface. One of: display, displayHeavy, body, bodyBold, mono. Defaults to displayHeavy; the eyebrow and subtext keep their own weight.
timings array no caption_pop only. Optional. One frame number per word, from get_transcript, relative to this layer's start. Without it the words are spread evenly, which is close but never exact.
items array no bullet_list, comparison_cards, process_flow, code_card only. One entry per card. Write each as 'Heading: the line under it'; a colon, en dash, or pipe splits them.
point object no callout_arrow, text, shape only. Free placement as fractions of the frame: {x: 0.5, y: 0.5} is the middle. Leave it out to use `position` instead.
size number no text only. Type size in points of a 1080-tall frame, 12 to 220. It scales with the format, so one number is right in every aspect ratio.
align string no text only. left, center or right. Also decides which way the block grows from its anchor.
tracking number no text only. Letter spacing as a fraction of the size, -0.05 to 0.4. Small caps labels want about 0.07.
line_height number no text only. Multiple of the size, 0.8 to 2.4. Defaults to 1.18.
backdrop string no text only. none, box, or scrim. A box is a plate behind the words; a scrim dims the whole frame so text over busy footage stays readable.
outline number no text only. Outline thickness in points of a 1080 frame, 0 to 12. Reads on any background, which a plate does not.
rotation number no text, shape only. Degrees, -180 to 180.
opacity number no text, shape only. 0 to 1. Below 1 the words are see-through, for a watermark or a caption you do not want to fight the picture.
animation string no text, shape, effect only. How it enters and leaves: fade, rise, drop, slide_left, slide_right, pop, grow, none.
shape string no shape only. rect, ellipse, pill, triangle, line, arrow, ring or star.
width number no shape only. As a fraction of the frame width, 0.01 to 1.5.
height number no shape only. As a fraction of the frame height, 0.01 to 1.5.
fill string no shape only. A hex like "#F54E00", a palette role, or "none" for an outline only.
stroke string no shape only. Outline colour: a hex, a palette role, or "none".
stroke_width number no shape only. Outline thickness in points of a 1080 frame, 0 to 40.
radius number no shape only. Corner rounding for a rect, in points of a 1080 frame.
effect string no effect only. dip, flash, vignette, grain, scanlines, glitch, letterbox or wash. `dip` fades to the colour and back out, which is the transition you put over a cut.
strength number no effect only. 0 to 1. Half is usually plenty; grain above 0.4 is a stylistic choice rather than an accident.
tag string no effect only. An internal label. The editor uses it to find the transition it put on a clip; leave it out.
at_seconds number yes Seconds from the start of the finished cut. From get_timeline or get_transcript.
duration_seconds number no Seconds on screen. Leave it out for the component's own sensible default.
position string no A named anchor. For `text` and `shape` you can send `point` instead and place it anywhere.
palette_role string no A palette role, or a hex like "#F54E00". Roles resolve against the live theme, so one spec is legible in light and dark; send a hex when the exact colour is the point. Roles: accent, warm, cool, positive, plain, invert.
easing string no —
reason string no One sentence, shown to the editor on the card. Why this, here.
Raw JSON schema
{
  "type": "object",
  "properties": {
    "component": {
      "type": "string",
      "enum": [
        "title_card",
        "lower_third",
        "caption_pop",
        "bullet_list",
        "comparison_cards",
        "process_flow",
        "stat_badge",
        "callout_arrow",
        "progress_bar",
        "code_card",
        "quote_card",
        "text",
        "shape",
        "effect"
      ]
    },
    "text": {
      "type": "string",
      "description": "title_card, lower_third, caption_pop, bullet_list, comparison_cards, process_flow, stat_badge, callout_arrow, progress_bar, code_card, quote_card, text only. The figure, with its furniture: '40%', '$1.2M', '3×'. The number inside is what counts up.",
      "maxLength": 24
    },
    "subtext": {
      "type": "string",
      "description": "title_card, lower_third, stat_badge, quote_card only. The role, the title, the one-line description.",
      "maxLength": 80
    },
    "eyebrow": {
      "type": "string",
      "description": "title_card only. A small tracked label above it: a chapter number, a section name.",
      "maxLength": 32
    },
    "font": {
      "type": "string",
      "description": "title_card, lower_third, caption_pop, bullet_list, stat_badge, quote_card, text only. The headline's typeface. One of: display, displayHeavy, body, bodyBold, mono. Defaults to displayHeavy; the eyebrow and subtext keep their own weight."
    },
    "timings": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0
      },
      "maxItems": 40,
      "description": "caption_pop only. Optional. One frame number per word, from get_transcript, relative to this layer's start. Without it the words are spread evenly, which is close but never exact."
    },
    "items": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 3
      },
      "maxItems": 6,
      "description": "bullet_list, comparison_cards, process_flow, code_card only. One entry per card. Write each as 'Heading: the line under it'; a colon, en dash, or pipe splits them."
    },
    "point": {
      "type": "object",
      "description": "callout_arrow, text, shape only. Free placement as fractions of the frame: {x: 0.5, y: 0.5} is the middle. Leave it out to use `position` instead.",
      "properties": {
        "x": {
          "type": "number",
          "minimum": 0,
          "maximum": 1
        },
        "y": {
          "type": "number",
          "minimum": 0,
          "maximum": 1
        }
      },
      "required": [
        "x",
        "y"
      ],
      "additionalProperties": false
    },
    "size": {
      "type": "number",
      "description": "text only. Type size in points of a 1080-tall frame, 12 to 220. It scales with the format, so one number is right in every aspect ratio."
    },
    "align": {
      "type": "string",
      "description": "text only. left, center or right. Also decides which way the block grows from its anchor."
    },
    "tracking": {
      "type": "number",
      "description": "text only. Letter spacing as a fraction of the size, -0.05 to 0.4. Small caps labels want about 0.07."
    },
    "line_height": {
      "type": "number",
      "description": "text only. Multiple of the size, 0.8 to 2.4. Defaults to 1.18."
    },
    "backdrop": {
      "type": "string",
      "description": "text only. none, box, or scrim. A box is a plate behind the words; a scrim dims the whole frame so text over busy footage stays readable."
    },
    "outline": {
      "type": "number",
      "description": "text only. Outline thickness in points of a 1080 frame, 0 to 12. Reads on any background, which a plate does not."
    },
    "rotation": {
      "type": "number",
      "description": "text, shape only. Degrees, -180 to 180."
    },
    "opacity": {
      "type": "number",
      "description": "text, shape only. 0 to 1. Below 1 the words are see-through, for a watermark or a caption you do not want to fight the picture."
    },
    "animation": {
      "type": "string",
      "description": "text, shape, effect only. How it enters and leaves: fade, rise, drop, slide_left, slide_right, pop, grow, none."
    },
    "shape": {
      "type": "string",
      "description": "shape only. rect, ellipse, pill, triangle, line, arrow, ring or star."
    },
    "width": {
      "type": "number",
      "description": "shape only. As a fraction of the frame width, 0.01 to 1.5."
    },
    "height": {
      "type": "number",
      "description": "shape only. As a fraction of the frame height, 0.01 to 1.5."
    },
    "fill": {
      "type": "string",
      "description": "shape only. A hex like \"#F54E00\", a palette role, or \"none\" for an outline only."
    },
    "stroke": {
      "type": "string",
      "description": "shape only. Outline colour: a hex, a palette role, or \"none\"."
    },
    "stroke_width": {
      "type": "number",
      "description": "shape only. Outline thickness in points of a 1080 frame, 0 to 40."
    },
    "radius": {
      "type": "number",
      "description": "shape only. Corner rounding for a rect, in points of a 1080 frame."
    },
    "effect": {
      "type": "string",
      "description": "effect only. dip, flash, vignette, grain, scanlines, glitch, letterbox or wash. `dip` fades to the colour and back out, which is the transition you put over a cut."
    },
    "strength": {
      "type": "number",
      "description": "effect only. 0 to 1. Half is usually plenty; grain above 0.4 is a stylistic choice rather than an accident."
    },
    "tag": {
      "type": "string",
      "description": "effect only. An internal label. The editor uses it to find the transition it put on a clip; leave it out.",
      "maxLength": 60
    },
    "at_seconds": {
      "type": "number",
      "minimum": 0,
      "description": "Seconds from the start of the finished cut. From get_timeline or get_transcript."
    },
    "duration_seconds": {
      "type": "number",
      "minimum": 0.2,
      "maximum": 30,
      "description": "Seconds on screen. Leave it out for the component's own sensible default."
    },
    "position": {
      "type": "string",
      "enum": [
        "lower_left",
        "lower_right",
        "upper_left",
        "upper_right",
        "center",
        "bottom_bar",
        "top_bar"
      ],
      "description": "A named anchor. For `text` and `shape` you can send `point` instead and place it anywhere."
    },
    "palette_role": {
      "type": "string",
      "description": "A palette role, or a hex like \"#F54E00\". Roles resolve against the live theme, so one spec is legible in light and dark; send a hex when the exact colour is the point. Roles: accent, warm, cool, positive, plain, invert."
    },
    "easing": {
      "type": "string",
      "enum": [
        "linear",
        "out",
        "in_out",
        "spring_out"
      ]
    },
    "reason": {
      "type": "string",
      "maxLength": 200,
      "description": "One sentence, shown to the editor on the card. Why this, here."
    }
  },
  "required": [
    "component",
    "at_seconds"
  ],
  "additionalProperties": false
}

Similar websites

wfsim.app

wfsim.app

A Warframe calculator that simulates the fight instead of estimating it — builder, simulator, optimizer. Every formula cites its source, and the golden tests ar…

live Unverified Media & Personal
101 tools A12 / Act89 / T0 Not yet scored Seen 2026-11-05
enemies_targets_list enemies_target_new enemies_target_copy enemies_target_open enemies_target_set
Inspect tools
commonplace-webmcp.vercel.app

commonplace-webmcp.vercel.app

Commonplace is an editable social reading space built for people and their browser agents.

live Unverified Media & Personal Transact tools
89 tools A10 / Act77 / T2 Not yet scored Seen 2026-11-05
commonplace.get_page_state commonplace_get_page_state commonplace.get_reading_list commonplace_get_reading_list commonplace.get_profile
Inspect tools
pixelforge-studio.appcaster.chatgpt.site

pixelforge-studio.appcaster.chatgpt.site

A professional browser pixel-art editor for drawing, frame animation, palettes, sprite sheets, GIF export, and WebMCP automation.

live Unverified Media & Personal Transact tools
88 tools A12 / Act70 / T6 Not yet scored Seen 2026-11-05
plan_text_creation get_text_creation_status create_from_text claim_text_creation update_text_creation
Inspect tools
pixelite.taskcraft.site

pixelite.taskcraft.site

Pixelite

live Unverified Media & Personal Transact tools
83 tools A4 / Act78 / T1 Not yet scored Seen 2026-11-05
get_document_info list_layers get_active_layer get_selection_info new_document
Inspect tools

Related on Influzer