flipswitch-toggle
Enable or disable a feature flag in a specific environment.
UX rule: Whenever you need to ask the user to choose between options (e.g. selecting an organization, project, flag, or environment), use the AskUserQuestion tool to present a selection UI instead of asking in plain text.
Arguments
The user may provide arguments via $ARGUMENTS, e.g. dark-mode on or dark-mode off. Parse:
- The flag name or key (e.g. "dark-mode", "Dark Mode")
- The desired state:
on/enable/true→ enabled,off/disable/false→ disabled
If no arguments are given, ask the user which flag to toggle and whether to enable or disable it.
Instructions
0. Verify MCP Server Configuration
Call mcp__flipswitch__authenticate as a connectivity check.
- If successful: ✅ MCP server is configured. Proceed to step 1.
- If it fails with "tool not found" or similar: ❌ MCP server is NOT configured. Run this in your terminal:
Then restart Claude Code and retry this skill.claude mcp add --scope user --transport http flipswitch https://mcp.flipswitch.io/mcp - If it fails with a network error: ⚠️ MCP server is configured but unreachable. Check your internet connection.
1. Authenticate
Call mcp__flipswitch__authenticate. If not authenticated, follow the device flow (show URL and code, then call mcp__flipswitch__authenticate again to confirm).
2. Select organization and project
- Call
mcp__flipswitch__list_organizations. If only one, use it. Otherwise, ask the user. - Call
mcp__flipswitch__list_projectswith the selected org. If only one, use it. Otherwise, ask the user.
3. Find the flag
Call mcp__flipswitch__list_flags with the org and project IDs. Match the user's input against flag keys and names (case-insensitive). If no match is found, show the available flags and ask the user to pick one.
4. Select environment
Call mcp__flipswitch__list_environments with the org and project IDs. If the user didn't specify an environment, ask which one. Default to "Development" if it exists and the user doesn't have a preference.
5. Production safety check
If the selected environment name contains "prod", "production", "live", or "main" (case-insensitive), you MUST warn the user before proceeding. Show a clear warning like:
You are about to enable/disable flag
{key}in {environment name}. This is a production environment and the change will affect live users. Are you sure?
Do NOT proceed until the user explicitly confirms. If they decline, abort.
6. Toggle the flag
Call mcp__flipswitch__toggle_flag with the org ID, project ID, flag ID, environment ID, and the desired enabled value.
7. Confirm
Tell the user:
- Flag {name} (
{key}) is now enabled/disabled in {environment name} - Link to dashboard: https://app.flipswitch.io