Manage Harness Feature Flags (FME / Split.io) via MCP. List flags by workspace, get flag details, create flags, kill or restore flags per environment, archive or unarchive flags, and delete flags. Use when asked to create a feature flag, kill/restore a flag, list flags, check flag status, enable or disable a feature, or manage feature rollouts. Trigger phrases: feature flag, kill switch, restore flag, create flag, feature rollout, archive flag, FME flag.
90%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Create, list, kill/restore, and delete Harness FME (Split.io-backed) Feature Flags via MCP.
FME flags are workspace-scoped (not project-scoped). You must discover the workspace_id and environment_id before most operations.
Call MCP tool: harness_list
Parameters:
resource_type: "fme_workspace"Call MCP tool: harness_list
Parameters:
resource_type: "fme_environment"
workspace_id: "<workspace_id>"Call MCP tool: harness_list
Parameters:
resource_type: "fme_feature_flag"
workspace_id: "<workspace_id>"Filter by name, tags, or rollout status:
Call MCP tool: harness_list
Parameters:
resource_type: "fme_feature_flag"
workspace_id: "<workspace_id>"
name: "dark_mode"
tags: "ui"
rollout_status_id: "<uuid>" # discover via fme_rollout_statusCall MCP tool: harness_get
Parameters:
resource_type: "fme_feature_flag"
workspace_id: "<workspace_id>"
feature_flag_name: "<flag_name>"For per-environment targeting/state, use fme_feature_flag_definition and pass environment_id.
Call MCP tool: harness_create
Parameters:
resource_type: "fme_feature_flag"
workspace_id: "<workspace_id>"
traffic_type_id: "<traffic_type_id>" # required by FME
body:
name: "dark_mode"
description: "Enable dark mode UI theme"
tags: ["ui", "rollout"]Kill (turn the flag OFF in one environment):
Call MCP tool: harness_execute
Parameters:
resource_type: "fme_feature_flag"
action: "kill"
workspace_id: "<workspace_id>"
feature_flag_name: "<flag_name>"
environment_id: "<environment_id>"Restore (re-enable after a kill):
Call MCP tool: harness_execute
Parameters:
resource_type: "fme_feature_flag"
action: "restore"
workspace_id: "<workspace_id>"
feature_flag_name: "<flag_name>"
environment_id: "<environment_id>"Call MCP tool: harness_execute
Parameters:
resource_type: "fme_feature_flag"
action: "archive" # or "unarchive"
workspace_id: "<workspace_id>"
feature_flag_name: "<flag_name>"Archiving is subject to OPA policy checks (returns 409 on violation). Unarchive returns 409 if dependent objects exist.
Call MCP tool: harness_update
Parameters:
resource_type: "fme_feature_flag"
workspace_id: "<workspace_id>"
feature_flag_name: "<flag_name>"
body:
description: "Updated description"
tags: ["ui", "ga"]Call MCP tool: harness_delete
Parameters:
resource_type: "fme_feature_flag"
workspace_id: "<workspace_id>"
feature_flag_name: "<flag_name>"| Resource Type | Operations | Description |
|---|---|---|
fme_workspace | list | List FME workspaces |
fme_environment | list | List FME environments (per workspace) |
fme_feature_flag | list, get, create, update, delete, execute(kill/restore/archive/unarchive) | Flag metadata at workspace scope |
fme_feature_flag_definition | list, get | Per-environment rollout targeting and state |
fme_rollout_status | list | Discover valid rollout_status_id values |
fme_rule_based_segment | list, get | Rule-based segments |
fme_rule_based_segment_definition | list, get, execute(enable/disable/change_request) | Segment definition per environment |
fme_feature_flag with body: { name: "dark_mode", ... }kill with production environment_idrestore with staging environment_idfme_feature_flag for workspacearchiveworkspace_id and environment_id before kill/restore — wrong environment can affect production.kill (off) and restore (on) per environment.environment_id is required — kills are per-environmentfeature_flag_name is exact (case-sensitive)workspace_idworkspace_idharness_list with resource_type: "fme_feature_flag" and no filters to see all flags in the workspaceharness/harness-ai
23e9b8b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.