Skip to main content
Glama

Group assets

group_assets
Destructive

Merge assets into a group. A group is a container asset that holds other assets as variants — different formats or crops of the same thing, or a set of colour swatches, which Playbook shows as a palette. The group has no file of its own and takes its preview from its first displayable child. Pass the asset the others should join as parent_asset_token; if it is already a group they are added to it, otherwise a new group is created around it. Children move to the parent's board. Requires a token with the write scope. Two rejections to plan around: every child must be ungrouped or already in this same group — one that belongs to a different group fails the whole call, so ungroup it first — and parent_asset_token must not itself be sitting inside a group. To add to an existing group, pass the GROUP's own token, not the token of one of its members.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
organizationNoWorkspace slug, as returned by list_organizations. Omit it when the account has a single workspace — it is then resolved from your token. Pass it only when the account has several, or when you mean a workspace other than the obvious one.
child_asset_tokensYesTokens of the assets to move into the group
parent_asset_tokenYesThe asset the others join. May itself be an existing group, but must NOT be an asset that sits inside one — that is rejected with 422.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • removedInput schema / properties / context
      Removed value: -{
      -  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
      -  "type": "string"
      -}
    • changedInput schema / required
      Previous value: -[
      -  "parent_asset_token",
      -  "child_asset_tokens",
      -  "context"
      -]New value: +[
      +  "parent_asset_token",
      +  "child_asset_tokens"
      +]
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already flag destructiveHint=true and readOnly=false, and the description goes well beyond them: it discloses the required write scope, the two 422 rejection conditions, that children move to the parent's board, and that a group has no file and derives its preview from its first displayable child. This is exactly the extra context annotations cannot carry.

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 core action and concept, and the operational warnings are grouped near the end. It is dense but nearly every sentence adds distinct value; slight length is justified by the non-obvious data model.

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?

For a destructive, non-idempotent mutation with no output schema, the description covers purpose, auth scope, failure modes, and side effects (children moving boards). 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 description coverage is 100%, so baseline is 3, but the description adds meaningful semantics beyond the schema: it clarifies that parent_asset_token may be an existing group or spawns a new one, and warns to pass the group's own token rather than a member's.

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 ('Merge assets into a group') and then defines what a group actually is, which is essential given the unusual data model. It clearly distinguishes this from siblings like ungroup_assets and move_assets by explaining the container/member relationship.

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?

Gives concrete conditions for use: pass the target asset as parent_asset_token, add to an existing group by passing the GROUP's token, and ungroup a child first if it belongs to another group. It does not explicitly name alternative sibling tools (e.g. move_assets, ungroup_assets) for adjacent tasks, so it stops short of a 5.

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