Mark a flag permanent or temporary
set_flag_permanentMark a feature flag as permanent to keep kill switches, ops toggles, or entitlement gates from being listed as stale or removal candidates, or set it back to temporary.
Instructions
Mark a flag permanent (a kill switch, ops toggle or entitlement gate that is meant to stay), or pass permanent: false to make it temporary again. Permanent flags are never listed as removal candidates or by find_stale_flags; evaluation never changes. Marking is refused with PERMANENT_FLAG_HAS_EXPIRY while the flag has an expiry date (clear it first with set_flag_expiry and expiresAtUtc: null), with FEATURE_NOT_ENABLED while permanent flags are not enabled for the organization, and on an archived flag. Making a flag temporary is always allowed.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"project": "<project>",
"flag": "<flag>",
"permanent": "<permanent>"
},
"name": "set_flag_permanent"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| flag | Yes | Flag key or id | |
| project | Yes | Project key | |
| permanent | Yes | true to mark the flag permanent, false to make it temporary |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| flag | Yes | ||
| project | Yes | ||
| permanent | Yes |