Skip to main content
Glama
canopy-labs

Featureflip

Official

Create, rename, or revoke an SDK key

manage_sdk_key
Destructive

Create, rename, or revoke Featureflip SDK keys for an environment; create returns the full key once, while revoke stops it working immediately.

Instructions

Manage an environment's SDK keys. action=create needs name + type and returns the full key ONCE (ServerSide for backend SDKs, ClientSide for browser/mobile). action=rename needs sdkKey and changes only the fields you pass. action=revoke needs sdkKey and stops the key working immediately; apps still using it lose flag updates. To rotate: create a new key, deploy it, then revoke the old one.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoKey name; required for create
typeNoRequired for create: ServerSide for backend SDKs, ClientSide for browser/mobile SDKs
actionYescreate needs name + type; rename and revoke need sdkKey
sdkKeyNoSDK key id (see list_sdk_keys); required for rename and revoke
projectYesProject key
descriptionNoWhat the key is used for; "" clears it
environmentYesEnvironment key, e.g. production

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.3.0

TDQS

A4.8/5.0
Behavior5/5

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

Discloses key behavioral traits annotations don't: create returns the full key ONCE (critical irreversibility), revoke takes effect immediately and causes apps to lose flag updates, and rename only changes passed fields. These are exactly the mutation consequences an agent must know.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five tight sentences front-loaded with scope, each action paired with its consequence, ending with the rotation workflow. No filler.

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?

Covers create/rename/revoke behavior and rotation thoroughly; output schema exists so return values needn't be explained. Minor gap: doesn't mention listing keys to obtain sdkKey, though the schema notes list_sdk_keys.

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?

Adds meaning by tying params to actions (name+type for create, sdkKey for rename/revoke) and explaining type semantics. With 100% schema coverage this is somewhat redundant, but the action-param coupling adds value beyond schema descriptions.

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+resource ('Manage an environment's SDK keys') and itemizes each action (create/rename/revoke) with its effect. Clearly distinguished from list_sdk_keys (read) among siblings.

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 maps each action to required params and gives a rotation recipe ('create a new key, deploy it, then revoke the old one'), telling the agent when to combine actions rather than revoke directly.

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