Skip to main content
Glama
kuklaph
by kuklaph

Edit Access Rights

cascade_edit_access_rights

Modify access rights (ACL) for a Cascade asset, replacing the entire ACL. Optionally propagate changes to all descendants for folders or containers.

Instructions

Modify access rights (ACL) for a Cascade asset. Optionally apply to all descendants.

Replaces the asset's ACL wholesale — include every user/group you want to keep; anyone omitted loses their explicit entry and falls back to allLevel. For folders or containers, setting applyToChildren: true propagates the new ACL recursively. Typical workflow: call cascade_read_access_rights first to get the current ACL, modify the array, then pass it here.

Args:

  • identifier (object, required): The asset whose ACL to modify

    • id (string, optional): Asset ID (preferred)

    • path (object, optional): { path, siteId OR siteName }

    • type (string, required): Entity type of the asset

  • accessRightsInformation (object, required):

    • aclEntries (array, optional): Full explicit ACL. Each entry: { name, type: "user"|"group", level: "read"|"write", id? }; include id for group entries when Cascade provides it.

    • allLevel (string): Default for everyone not listed. One of "none" | "read" | "write".

  • applyToChildren (boolean, optional): For containers only. Default false. Propagates the ACL to all descendants.

Returns: Cascade OperationResult: { success: true } On failure: { success: false, message: "" }

Examples:

  • Use when: "Grant group 'editors' write access" -> { identifier: { type: "folder", id: "..." }, accessRightsInformation: { aclEntries: [{ name: "editors", type: "group", level: "write" }], allLevel: "read" } }

  • Use when: "Lock a folder tree down" -> pass applyToChildren: true alongside the restricted ACL.

  • Don't use when: You only want to read — use cascade_read_access_rights.

  • Don't use when: You want to change workflow policy — use cascade_edit_workflow_settings.

Error Handling:

  • "Asset not found" when the identifier doesn't resolve

  • "User/group not found" when an aclEntries name is invalid

  • "Permission denied" when credentials lack admin/edit-acl rights. Responses are JSON text; structuredContent is authoritative when the response fits. Oversized responses return bounded _cache metadata for cascade_read_response. For cascade_read, read_mode controls preview versus raw Cascade payload shape.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
identifierNoThe asset or container whose access rights to modify.
accessRightsInformationNoREQUIRED: Complete access rights payload matching Cascade's AccessRightsInformationSend shape.
applyToChildrenNoApply these rights to child assets/containers (default: false). Only meaningful for folders and containers.
Behavior5/5

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

Annotations indicate non-readonly, non-destructive, non-idempotent, open-world. The description adds critical behavioral details: it replaces the ACL wholesale (any omitted users lose explicit entry and fall back to allLevel), the recommended workflow (read first, modify array, then write), and that applyToChildren propagates recursively. No contradictions with annotations.

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?

Description is well-structured with sections for Args, Returns, Examples, Error Handling. Uses bolding and bullet points. However, it is somewhat verbose; could be trimmed slightly without losing clarity. Still effective for agent comprehension.

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?

Given no output schema, the description fully explains return values (Cascade OperationResult). It covers all parameters, behavioral nuances, error cases, and provides multiple examples. Completely equips the agent to use the tool correctly.

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 coverage is 100%, baseline 3. The description goes beyond schema by explaining the semantics of aclEntries (optional but if omitted only allLevel applies), the structure of identifier (id vs path), and the behavior of applyToChildren (for containers only, default false). Examples clarify usage.

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 clearly states the tool modifies access rights (ACL) for a Cascade asset, optionally applying to descendants. It uses specific verbs ('modify', 'replaces') and resources ('access rights', 'ACL'). It distinguishes from siblings by naming alternatives like cascade_read_access_rights and cascade_edit_workflow_settings.

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 provides when-to-use examples ('Grant group editors write access', 'Lock a folder tree down') and when-not-to-use ('Don't use when: You only want to read', 'Don't use when: You want to change workflow policy') with direct references to sibling tools.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kuklaph/cascade-cms-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server