set_form_permission_inheritance

Admin-only MCP tool.

Make one form take its permissions from another, or stop it doing so. Use get_form_permissions_by_group first to see what each form currently has, because of what follows.

This is not a way to copy permissions once. A form that inherits keeps no permissions of its own: whatever it had is replaced by a copy of the other form’s, and it is replaced again every time the other form’s permissions change. set_form_permissions will refuse to work on it while the arrangement is in place.

The replacement is immediate and cannot be undone. There is no record kept of what the inheriting form had before, and clearing the arrangement later does not bring it back - the form simply keeps the permissions it inherited and becomes editable again. This tool reports what each affected form held beforehand so you have a record; if you might want those permissions back, save them somewhere before calling it.

Use it where several forms genuinely belong to one another and should always be reachable by the same people - the forms behind a single application, say - so that granting a group access once covers all of them. Do not use it to give a form the same permissions as another form as a starting point, because the copy is permanent and continues.

Visibility conditions are not copied. They reference elements, and the elements differ between forms, so an inheriting form keeps its own conditions and needs them set up separately.

Inheritance is one level deep. A form that inherits cannot also be inherited from, so chains are refused.

Properties

Property Type Required? Description
form_id integer Required

Required. The form whose inheritance arrangement you are changing. Use list_forms to find form ids.

inherits_from_form_id integer Optional

Optional. The form that form_id should take its permissions from. Give 0 to stop it inheriting, which leaves it holding whatever it last inherited and makes its permissions editable again. Setting this replaces form_id’s permissions entirely.

forms_that_inherit_from_this array of integer Optional

Optional. The complete list of forms that should take their permissions from form_id. This replaces the current list rather than adding to it: a form that inherits today and is not in the list stops inheriting, and an empty array detaches all of them. Each newly listed form has its permissions replaced by a copy of form_id’s.

← Back to the MCP reference