MCP Tools Reference: saasservicemgmt

Outil : get_flag_revision

Obtient une ressource FlagRevision. Paramètre obligatoire : "name" (par exemple, projects/my-project/locations/us-central1/flagRevisions/my-flagrevision).

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP get_flag_revision.

Requête curl
                  
curl --location 'https://saasservicemgmt.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "get_flag_revision",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schéma d'entrée

Structure de la requête pour la méthode GetFlagRevision.

GetFlagRevisionRequest

Représentation JSON
{
  "name": string
}
Champs
name

string

Obligatoire. Nom de la ressource dans un service.

Schéma de sortie

Instantané de EvaluationSpec pour Flag.

FlagRevision

Représentation JSON
{
  "name": string,
  "flag": string,
  "evaluationSpec": {
    object (EvaluationSpec)
  },
  "snapshot": {
    object (Flag)
  },
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string
}
Champs
name

string

Identifiant. Nom de la ressource (URI complet de la ressource) suivant le schéma de dénomination standard :

"projects/{project}/locations/{location}/flagRevisions/{flag_revision_id}"

flag

string

Obligatoire. Immuable. Nom de l'Flag dont il s'agit d'une révision.

evaluationSpec
(deprecated)

object (EvaluationSpec)

Uniquement en sortie. Immuable. Instantané de EvaluationSpec pour flag. OBSOLÈTE : utilisez plutôt "snapshot".

snapshot

object (Flag)

Uniquement en sortie. Immuable. Instantané de Flag.

labels

map (key: string, value: string)

Facultatif. Étiquettes de la ressource, qui peuvent être utilisées pour la catégorisation. Elles sont semblables aux étiquettes de ressources Kubernetes.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Facultatif. Les annotations sont un mappage clé-valeur non structuré stocké avec une ressource. Elles peuvent être définies par des outils externes pour stocker et récupérer des métadonnées arbitraires. Elles ne peuvent pas faire l'objet de requêtes et doivent être conservées lors de la modification d'objets.

Pour en savoir plus, consultez https://kubernetes.io/docs/user-guide/annotations.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Uniquement en sortie. Identifiant unique de la ressource. L'UID est unique dans le temps et l'espace pour cette ressource dans le cadre du service. Il est habituellement généré par le serveur lors de la création réussie d'une ressource et ne doit pas être modifié. L'UID permet d'identifier de manière unique les ressources avec réutilisation du nom. Il doit être un UUID4.

etag

string

Uniquement en sortie. Valeur opaque qui identifie de manière unique la version ou la génération d'une ressource. Cet identifiant permet de confirmer que le client et le serveur sont d'accord sur l'ordre d'écriture d'une ressource.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de la ressource.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la dernière mise à jour de la ressource. Toute modification de la ressource par les utilisateurs doit actualiser cette valeur. Les modifications d'une ressource par le service doivent actualiser cette valeur.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

EvaluationSpec

Représentation JSON
{
  "variants": [
    {
      object (Variant)
    }
  ],
  "defaultTarget": string,
  "allocations": [
    {
      object (Allocation)
    }
  ],
  "rules": [
    {
      object (EvaluationRule)
    }
  ],
  "attributes": [
    string
  ]
}
Champs
variants[]
(deprecated)

object (Variant)

Facultatif. Liste des variantes.

defaultTarget

string

Obligatoire. Variante ou allocation par défaut du flag.

allocations[]

object (Allocation)

Facultatif. Liste des allocations.

rules[]

object (EvaluationRule)

Facultatif. Les règles d'évaluation définissent la logique d'évaluation du flag par rapport à un contexte donné. Les règles sont évaluées séquentiellement dans l'ordre spécifié.

attributes[]

string

Facultatif. Noms des attributs de contexte utilisés dans les règles d'évaluation et les allocations.

Variante

Représentation JSON
{
  "name": string,

  // Union field value can be only one of the following:
  "boolValue": boolean,
  "intValue": string,
  "stringValue": string,
  "doubleValue": number
  // End of list of possible types for union field value.
}
Champs
name

string

Obligatoire. Nom de la variante. Longueur maximale : 128 octets.

Champ d'union value. value est une valeur d'indicateur unique pour la variante. value ne peut être qu'un des éléments suivants :
boolValue

boolean

Facultatif. Valeur de l'indicateur booléen.

intValue

string (int64 format)

Facultatif. Valeur de l'indicateur entier.

stringValue

string

Facultatif. Valeur de l'option de chaîne.

doubleValue

number

Facultatif. Valeur double de l'indicateur.

Allocation

Représentation JSON
{
  "id": string,
  "randomizedOn": string,
  "description": string,
  "slots": [
    {
      object (AllocationSlot)
    }
  ]
}
Champs
id

string

Obligatoire. ID d'allocation. Longueur maximale : 128 octets.

randomizedOn

string

Obligatoire. Clé de l'attribut de contexte utilisé pour la répartition du trafic.

description

string

Facultatif. Description de l'allocation. Longueur maximale : 500 octets.

slots[]

object (AllocationSlot)

Obligatoire. Les emplacements définissent la distribution pondérée des variantes.

AllocationSlot

Représentation JSON
{
  "variant": string,
  "weight": integer
}
Champs
variant

string

Obligatoire. Variante de l'emplacement d'allocation.

weight

integer

Obligatoire. La pondération définit la proportion de trafic à allouer à la variante, par rapport aux autres emplacements de la même allocation.

EvaluationRule

Représentation JSON
{
  "id": string,
  "condition": string,
  "target": string
}
Champs
id

string

Obligatoire. ID de la règle d'évaluation. Longueur maximale : 128 octets.

condition

string

Obligatoire. Expression CEL (Common Expression Language) qui renvoie une valeur booléenne. L'expression est évaluée par rapport au contexte fourni. Si la valeur renvoyée est "true", la cible de la règle est appliquée.

target

string

Obligatoire. La variante cible ou l'allocation à appliquer si la condition est remplie. Il doit correspondre au nom ou à l'ID d'une variante ou d'une allocation définie.

Option

Représentation JSON
{
  "name": string,
  "key": string,
  "valueType": enum (FlagValueType),
  "flagValueType": enum (ValueType),
  "evaluationSpec": {
    object (EvaluationSpec)
  },
  "unitKind": string,
  "description": string,
  "variants": [
    {
      object (FlagVariant)
    }
  ],
  "flagSet": string,
  "state": enum (State),
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string
}
Champs
name

string

Identifiant. Nom de la ressource (URI complet de la ressource) suivant le schéma de dénomination standard :

"projects/{project}/locations/{location}/flags/{flag_id}"

key

string

Obligatoire. Immuable. Clé de flag utilisée dans les API d'évaluation d'exécution (OpenFeature). Longueur maximale : 256 octets.

valueType
(deprecated)

enum (FlagValueType)

Facultatif. Immuable. Obsolète : utilisez plutôt flag_value_type. Type de valeur de l'indicateur.

flagValueType

enum (ValueType)

Facultatif. Immuable. Type de valeur de l'indicateur.

evaluationSpec

object (EvaluationSpec)

Facultatif. Spécification de la façon dont la valeur du flag doit être évaluée.

Si un indicateur booléen est créé sans spécification evaluation_spec, deux variantes par défaut sont créées : "Activé" (avec bool_value = true) et "Désactivé" (avec bool_value = false). La variante "Désactivé" est définie comme default_target.

unitKind

string

Obligatoire. Immuable. UnitKind pouvant utiliser cette option.

description

string

Facultatif. Description du signalement. Longueur maximale : 500 octets.

variants[]

object (FlagVariant)

Facultatif. Liste des variantes.

flagSet

string

Facultatif. Ensemble d'indicateurs auquel appartient cet indicateur.

state

enum (State)

Facultatif. État actuel du signalement.

labels

map (key: string, value: string)

Facultatif. Étiquettes de la ressource, qui peuvent être utilisées pour la catégorisation. Elles sont semblables aux étiquettes de ressources Kubernetes.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Facultatif. Les annotations sont un mappage clé-valeur non structuré stocké avec une ressource. Elles peuvent être définies par des outils externes pour stocker et récupérer des métadonnées arbitraires. Elles ne peuvent pas faire l'objet de requêtes et doivent être conservées lors de la modification d'objets.

Pour en savoir plus, consultez https://kubernetes.io/docs/user-guide/annotations.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Uniquement en sortie. Identifiant unique de la ressource. L'UID est unique dans le temps et l'espace pour cette ressource dans le cadre du service. Il est habituellement généré par le serveur lors de la création réussie d'une ressource et ne doit pas être modifié. L'UID permet d'identifier de manière unique les ressources avec réutilisation du nom. Il doit être un UUID4.

etag

string

Uniquement en sortie. Valeur opaque qui identifie de manière unique la version ou la génération d'une ressource. Cet identifiant permet de confirmer que le client et le serveur sont d'accord sur l'ordre d'écriture d'une ressource.

createTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la création de la ressource.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Code temporel de la dernière mise à jour de la ressource. Toute modification de la ressource par les utilisateurs doit actualiser cette valeur. Les modifications d'une ressource par le service doivent actualiser cette valeur.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

FlagVariant

Représentation JSON
{
  "id": string,
  "trackingId": string,
  "description": string,

  // Union field value can be only one of the following:
  "booleanValue": boolean,
  "integerValue": string,
  "stringValue": string,
  "doubleValue": number
  // End of list of possible types for union field value.
}
Champs
id

string

Obligatoire. ID de la variante. Longueur maximale : 128 octets.

trackingId

string

Facultatif. trackingId est unique en fonction du nom et de la valeur de la variante dans le champ d'application du service. Il est généralement généré par le serveur et ne doit pas être modifié. trackingId permet d'identifier et de suivre les variantes de manière unique.

description

string

Facultatif. Description lisible de ce que fait ou représente cette variante.

Champ d'union value. value est une valeur d'indicateur unique pour la variante. value ne peut être qu'un des éléments suivants :
booleanValue

boolean

Facultatif. Valeur booléenne de la variante.

integerValue

string (int64 format)

Facultatif. Valeur de variante entière.

stringValue

string

Facultatif. Valeur de variante de type chaîne.

doubleValue

number

Facultatif. Valeur de variante double.

LabelsEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

AnnotationsEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

Horodatage

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z).

nanos

integer

Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 inclus.

LabelsEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

AnnotationsEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

Annotations d'outils

Indication destructive : ❌ | Indication idempotente : ✅ | Indication en lecture seule : ✅ | Indication Open World : ❌