Skip to main content
Glama

update_content

Update a content item's metadata in part: only the fields you provide are changed, leaving the rest untouched. Modify privacy, channels, cover, categories, or body widgets.

Instructions

Update a content item's metadata. Only provided fields are changed.

workspace_id: target workspace ID — get available IDs from list_workspaces()
privacy: "Preview", "Private", or "Public"
channels: list of channel IDs (replaces existing placement)
main_asset_id: ID of the primary playable asset
url: external URL to associate with the content
hub_profile_id: the owning hub profile. Optional — when omitted it is
    resolved automatically from the content, so you normally do not pass it.
cover_image: http(s):// URL (or local path) of the cover; the URL PATH must
    end in an image extension (.jpg/.png/...). Query strings are fine (signed
    URLs work); an extension-less URL (e.g. placehold.co/600x400) returns 400.
categories: category assignment objects (REPLACES existing — to append,
    read the content first and send the full list back)

context: the body — REPLACES the existing widget list. Same widget shapes
as create_content, camelCase keys: "Text"{content}; "LinkList"{links:[{$type,
title,url}]}; "Media"{assetId,autoplay}; "HubProfile"{hubProfileIds:[...]};
"ContentWidget"{referenceType,referenceIds:[{$type,id}]}. To append to the
current body, read it first (get_content_v2) and send the existing widgets
plus the new ones.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNo
nameNo
contextNo
detailsNo
privacyNo
channelsNo
categoriesNo
content_idYes
cover_imageNo
workspace_idYes
main_asset_idNo
hub_profile_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.18

TDQS

A4.3/5.0
Behavior4/5

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

The description clearly discloses replace semantics for channels, categories, and context, and calls out the cover_image 400 edge case. Annotations already indicate readOnlyHint=false and destructiveHint=false, and the description adds useful side-effect details without contradicting them.

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 description is long but well-structured with line breaks and focused details for complex replace behaviors. It front-loads the core update statement and only then adds necessary caveats and widget-shape examples.

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?

Given the tool's complexity—replace semantics, nested widget shapes, and read-before-append workflows—the description is quite complete. It lacks explicit error handling beyond cover_image and does not describe return values, but no output schema is provided and the update semantics are covered well.

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?

The JSON Schema has no per-field descriptions, but the description text explains most parameters: workspace_id, privacy, channels, main_asset_id, url, hub_profile_id, cover_image, categories, and context. content_id, name, and details are not explicitly described, though their roles are largely inferable from the update context.

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?

The description opens with a specific verb and resource: 'Update a content item's metadata.' It clearly distinguishes this from creating, archiving, or moving content, especially given sibling tools like create_content and archive_content.

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

Usage Guidelines4/5

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

It explains partial updates with 'Only provided fields are changed' and gives explicit guidance for append behavior ('read it first (get_content_v2)'). It does not explicitly contrast with every alternative like move_content or patch_content_progression, but the metadata-update scope is clear.

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