Skip to main content
Glama

Create a branded watch-together link

create_branded_link

Creates a permanent public page (…/r/) with a name, an optional one-line description, colour and video. Everyone who opens it lands in that page's room, any time, so it suits teachers, classes, clubs and communities who reuse one link every week (for a one-off, use create_watch_room). Returns public_link to share and a private edit_link: the user opens it to add a logo and background and download a poster with a QR code, and it is needed for update_branded_link and delete_branded_link. Give edit_link only to the user, never to guests.

Input Schema

NameRequiredDescriptionDefault
nameYesName shown on the page, e.g. "Ms. Lee's English Class".
slugNoOptional. The link ending: 3-30 lowercase Latin letters, digits and hyphens (e.g. lee-english). Made from the name if omitted.
colorNoOptional theme colour as #rrggbb.
taglineNoOptional one line, e.g. "Every Tuesday at 8 pm".
video_urlNoOptional video to load in the room. A direct video link (mp4, webm, m3u8) or a public YouTube video URL. Paid streaming services are not supported.

Output Schema

NameRequiredDescriptionDefault
okYesfalse when the call failed; then code says why.
codeNoError code when ok is false.
slugNoThe link ending.
edit_linkNoPrivate edit link.
public_linkNoLink to share.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / video_url / description
      Previous value: -"Optional video to load in the room: a direct video link or a public YouTube video."New value: +"Optional video to load in the room. A direct video link (mp4, webm, m3u8) or a public YouTube video URL. Paid streaming services are not supported."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "code": {
      +      "description": "Error code when ok is false.",
      +      "type": "string"
      +    },
      +    "edit_link": {
      +      "description": "Private edit link.",
      +      "type": "string"
      +    },
      +    "ok": {
      +      "description": "false when the call failed; then code says why.",
      +      "type": "boolean"
      +    },
      +    "public_link": {
      +      "description": "Link to share.",
      +      "type": "string"
      +    },
      +    "slug": {
      +      "description": "The link ending.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "ok"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and idempotentHint=false, so the safety profile is largely structured. The description adds the permanent public exposure model ('everyone who opens it lands in that page's room, any time') and a security directive ('Give edit_link only to the user, never to guests'), which is useful context. However, it does not state whether slug collisions fail or are modified, whether creating is reversible, or how errors surface – gaps that matter for a permanently addressable public resource.

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?

The definition is front-loaded with what the tool creates and why it exists, and every clause carries signal (permanence, return values, edit_link handling). It is denser than an ideal two-liner and could split the edit_link guidance into its own sentence, but nothing is padding.

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

Completeness5/5

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

Even though an output schema exists, the description names the two key returns (public_link, edit_link) and explains what each is for and who may receive it – exactly the decision-relevant context. Combined with the sibling routing and permanence note, an agent has everything needed to call it correctly.

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

Parameters4/5

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

Schema coverage is 100% and each parameter has a clear example-bearing description, so the schema does the heavy lifting. The prose only loosely maps to the fields ('a name, an optional one-line description, colour and video'), but it does add semantics the schema lacks – that the slug drives the public URL and that it is derived from the name when omitted.

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 resource ('Creates a permanent public page (…/r/<slug>)') and enumerates what the page carries (name, description, colour, video). It also makes the persistent-room behaviour explicit, so the agent can tell it apart from create_watch_room without opening a schema.

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?

Gives an explicit when-to-use condition ('suits teachers, classes, clubs and communities who reuse one link every week') and names the alternative for the opposite case ('for a one-off, use create_watch_room'). It further routes the edit_link to the update/delete siblings, covering the lifecycle.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources