Skip to main content
Glama

publish

Upload one user-approved video to YouTube, Facebook, or TikTok via the user's logged-in Chrome, then post it now or schedule it.

Instructions

Upload one video to one platform through the user's logged-in Chrome, and publish or schedule it.

Only call this after the user approved this exact post (video, text, platform, time). platform: "youtube" | "facebook" | "tiktok". video: absolute path of the video file on this computer. caption: YouTube description / Facebook reel description / TikTok caption, hashtags included, written as-is. title: YouTube title (required for YouTube, max 100 chars; ignored elsewhere). tags: YouTube tags. schedule_at: ISO 8601 with UTC offset (e.g. "2026-11-01T17:00+02:00"); omit to publish now. options: youtube {channel_id, playlists, made_for_kids, altered_content, visibility}; facebook {asset_id, allow_remix}; tiktok {visibility, ai_generated, allow_comments}. dry_run: fill everything but stop before the final Publish/Schedule click (use it first for a new template). keep_tab: leave the tab open afterwards (to look at a dry run). Returns {ok, results:[{platform, ok, status, url, post_id, scheduled_for, message, screenshot}]}.

Input Schema

NameRequiredDescriptionDefault
tagsNo
titleNo
videoYes
captionYes
dry_runNo
optionsNo
keep_tabNo
platformYes
schedule_atNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds real context beyond the annotations: it runs through the user's logged-in Chrome (auth model), options vary per platform, dry_run stops before the final click, and keep_tab keeps the tab open for inspection. It does not warn that publish is non-idempotent (a retry may create a duplicate post) or describe failure handling, which is the notable gap given the annotations declare openWorldHint and idempotentHint=false.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the action and the approval precondition, then a compact per-parameter glossary with no filler. It is dense but every line conveys operative detail; only minor cost is the terse line-wrapped enumeration style.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so skipping return-value detail would be fine, yet it still sketches the result shape. For a high-stakes, open-world, one-shot publish action, the remaining gap is error/retry behavior and what happens if the Chrome session is not logged in.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden and does: each parameter is explained with platform-specific meaning (caption = YouTube description / FB reel description / TikTok caption), title constraints (required for YouTube, max 100 chars, ignored elsewhere), schedule_at format with a worked ISO 8601 example, per-platform option keys, and dry_run/keep_tab semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and scope: upload one video to one platform via the user's logged-in Chrome, then publish or schedule. The 'one video to one platform' phrasing implicitly separates it from publish_batch, and the platform/video/caption mapping makes the resource concrete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly gates invocation on prior user approval of this exact post (video, text, platform, time), and gives a concrete sequencing rule: use dry_run first for a new template, and omit schedule_at to publish now. This is what/when guidance an agent can act on.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools