MCP Tools Reference: saasservicemgmt

Tool: get_flag_revision

Ruft eine FlagRevision-Ressource ab. Erforderlicher Parameter: „name“ (z.B. „projects/my-project/locations/us-central1/flagRevisions/my-flagrevision“).

Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool get_flag_revision aufrufen.

Curl-Anfrage
                  
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
}'
                

Eingabeschema

Die Anfragestruktur für die Methode „GetFlagRevision“.

GetFlagRevisionRequest

JSON-Darstellung
{
  "name": string
}
Felder
name

string

Erforderlich. Der Name der Ressource in einem Dienst.

Ausgabeschema

Eine Momentaufnahme der EvaluationSpec für die Flag.

FlagRevision

JSON-Darstellung
{
  "name": string,
  "flag": string,
  "evaluationSpec": {
    object (EvaluationSpec)
  },
  "snapshot": {
    object (Flag)
  },
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string
}
Felder
name

string

ID. Der Ressourcenname (vollständiger URI der Ressource) gemäß dem Standardbenennungsschema:

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

flag

string

Erforderlich. Nicht veränderbar. Name der Flag, deren Version dies ist.

evaluationSpec
(deprecated)

object (EvaluationSpec)

Nur Ausgabe. Nicht veränderbar. Snapshot der EvaluationSpec für die flag. VERALTET: Verwenden Sie stattdessen „snapshot“.

snapshot

object (Flag)

Nur Ausgabe. Nicht veränderbar. Snapshot von Flag.

labels

map (key: string, value: string)

Optional. Die Labels der Ressource, die zur Kategorisierung verwendet werden können, ähnlich wie Kubernetes-Ressourcenlabels.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Optional. „Annotations“ ist eine unstrukturierte Schlüssel/Wert-Zuordnung, die mit einer Ressource gespeichert wird und von externen Tools festgelegt werden kann, um beliebige Metadaten zu speichern und abzurufen. Sie können nicht abgefragt werden und sollten beim Ändern von Objekten beibehalten werden.

Weitere Informationen: https://kubernetes.io/docs/user-guide/annotations

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Nur Ausgabe. Die eindeutige Kennzeichnung der Ressource. Die UID gilt zeitlich und räumlich im Rahmen des Dienstes nur für diese eine Ressource. Sie wird in der Regel nach dem Erstellen der Ressource vom Server generiert und darf nicht geändert werden. Die UID dient dazu, Ressourcen, deren Namen wiederverwendet werden, eindeutig zu kennzeichnen. Dies sollte eine UUID4 sein.

etag

string

Nur Ausgabe. Ein opaker Wert, der eine Version oder Generation einer Ressource eindeutig kennzeichnet. Damit kann bestätigt werden, dass Client und Server der Reihenfolge einer Ressource, die gerade geschrieben wird, zustimmen.

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource erstellt wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource zuletzt aktualisiert wurde. Wenn Nutzer Änderungen an der Ressource vornehmen, muss dieser Wert aktualisiert werden. Gleiches gilt bei Änderungen an der Ressource durch den Dienst.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

EvaluationSpec

JSON-Darstellung
{
  "variants": [
    {
      object (Variant)
    }
  ],
  "defaultTarget": string,
  "allocations": [
    {
      object (Allocation)
    }
  ],
  "rules": [
    {
      object (EvaluationRule)
    }
  ],
  "attributes": [
    string
  ]
}
Felder
variants[]
(deprecated)

object (Variant)

Optional. Eine Liste von Varianten.

defaultTarget

string

Erforderlich. Standardvariante oder ‑zuweisung des Flags.

allocations[]

object (Allocation)

Optional. Eine Liste der Zuweisungen.

rules[]

object (EvaluationRule)

Optional. Mit Bewertungsregeln wird die Logik für die Bewertung des Flags anhand eines bestimmten Kontexts definiert. Die Regeln werden sequenziell in der angegebenen Reihenfolge ausgewertet.

attributes[]

string

Optional. Namen der Kontextattribute, die in den Bewertungsregeln und Zuweisungen verwendet werden.

Variante

JSON-Darstellung
{
  "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.
}
Felder
name

string

Erforderlich. Name der Variante. Maximale Länge: 128 Bytes.

Union-Feld value. „value“ ist ein einzelner Flag-Wert für die Variante. Für value ist nur einer der folgenden Werte zulässig:
boolValue

boolean

Optional. Boolescher Flag-Wert.

intValue

string (int64 format)

Optional. Ganzzahliger Flag-Wert.

stringValue

string

Optional. String-Flag-Wert.

doubleValue

number

Optional. Doppelter Flag-Wert.

Zuordnung

JSON-Darstellung
{
  "id": string,
  "randomizedOn": string,
  "description": string,
  "slots": [
    {
      object (AllocationSlot)
    }
  ]
}
Felder
id

string

Erforderlich. Zuweisungs-ID. Maximale Länge: 128 Bytes.

randomizedOn

string

Erforderlich. Schlüssel des Kontextattributs, das für die Traffic-Aufteilung verwendet wird.

description

string

Optional. Beschreibung der Zuweisung. Maximale Länge: 500 Bytes.

slots[]

object (AllocationSlot)

Erforderlich. Mit „Slots“ wird die gewichtete Verteilung von Varianten definiert.

AllocationSlot

JSON-Darstellung
{
  "variant": string,
  "weight": integer
}
Felder
variant

string

Erforderlich. Variante des Zuweisungsslots.

weight

integer

Erforderlich. Mit der Gewichtung wird der Anteil des Traffics festgelegt, der der Variante zugewiesen werden soll, im Verhältnis zu anderen Slots in derselben Zuweisung.

EvaluationRule

JSON-Darstellung
{
  "id": string,
  "condition": string,
  "target": string
}
Felder
id

string

Erforderlich. ID der Bewertungsregel. Maximale Länge: 128 Bytes.

condition

string

Erforderlich. Ein CEL-Ausdruck (Common Expression Language), der als boolescher Wert ausgewertet wird. Der Ausdruck wird anhand des bereitgestellten Kontexts ausgewertet. Wenn „true“ zurückgegeben wird, wird das Ziel der Regel angewendet.

target

string

Erforderlich. Die Zielvariante oder Zuweisung, die angewendet werden soll, wenn die Bedingung erfüllt ist. Er muss mit der ID einer definierten Variante oder Zuweisung übereinstimmen.

Flag

JSON-Darstellung
{
  "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
}
Felder
name

string

ID. Der Ressourcenname (vollständiger URI der Ressource) gemäß dem Standardbenennungsschema:

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

key

string

Erforderlich. Nicht veränderbar. In Laufzeitbewertungs-APIs verwendeter Flag-Schlüssel (OpenFeature). Maximale Länge: 256 Bytes.

valueType
(deprecated)

enum (FlagValueType)

Optional. Nicht veränderbar. Nicht mehr unterstützt: Verwenden Sie stattdessen flag_value_type. Typ des Flag-Werts.

flagValueType

enum (ValueType)

Optional. Nicht veränderbar. Typ des Flag-Werts.

evaluationSpec

object (EvaluationSpec)

Optional. Gibt an, wie der Flag-Wert ausgewertet werden soll.

Wenn ein boolesches Flag ohne Angabe von „evaluation_spec“ erstellt wird, werden standardmäßig zwei Standardvarianten erstellt: „Aktiviert“ (mit „bool_value“ = „true“) und „Deaktiviert“ (mit „bool_value“ = „false“). „Deaktiviert“ wird als „default_target“ festgelegt.

unitKind

string

Erforderlich. Nicht veränderbar. UnitKind, die dieses Flag verwenden können.

description

string

Optional. Beschreibung des Flags. Maximale Länge: 500 Bytes.

variants[]

object (FlagVariant)

Optional. Eine Liste von Varianten.

flagSet

string

Optional. Die Flag-Gruppe, zu der dieses Flag gehört.

state

enum (State)

Optional. Aktueller Status des Flags.

labels

map (key: string, value: string)

Optional. Die Labels der Ressource, die zur Kategorisierung verwendet werden können, ähnlich wie Kubernetes-Ressourcenlabels.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Optional. „Annotations“ ist eine unstrukturierte Schlüssel/Wert-Zuordnung, die mit einer Ressource gespeichert wird und von externen Tools festgelegt werden kann, um beliebige Metadaten zu speichern und abzurufen. Sie können nicht abgefragt werden und sollten beim Ändern von Objekten beibehalten werden.

Weitere Informationen: https://kubernetes.io/docs/user-guide/annotations

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Nur Ausgabe. Die eindeutige Kennzeichnung der Ressource. Die UID gilt zeitlich und räumlich im Rahmen des Dienstes nur für diese eine Ressource. Sie wird in der Regel nach dem Erstellen der Ressource vom Server generiert und darf nicht geändert werden. Die UID dient dazu, Ressourcen, deren Namen wiederverwendet werden, eindeutig zu kennzeichnen. Dies sollte eine UUID4 sein.

etag

string

Nur Ausgabe. Ein opaker Wert, der eine Version oder Generation einer Ressource eindeutig kennzeichnet. Damit kann bestätigt werden, dass Client und Server der Reihenfolge einer Ressource, die gerade geschrieben wird, zustimmen.

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource erstellt wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource zuletzt aktualisiert wurde. Wenn Nutzer Änderungen an der Ressource vornehmen, muss dieser Wert aktualisiert werden. Gleiches gilt bei Änderungen an der Ressource durch den Dienst.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

FlagVariant

JSON-Darstellung
{
  "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.
}
Felder
id

string

Erforderlich. Varianten-ID. Maximale Länge: 128 Bytes.

trackingId

string

Optional. „trackingId“ ist je nach Name und Wert der Variante im Rahmen des Dienstes eindeutig. Sie wird in der Regel vom Server generiert und darf nicht geändert werden. Mit „trackingId“ werden Varianten eindeutig identifiziert und nachverfolgt.

description

string

Optional. Eine für Menschen lesbare Beschreibung der Funktion oder Bedeutung dieser Variante.

Union-Feld value. „value“ ist ein einzelner Flag-Wert für die Variante. Für value ist nur einer der folgenden Werte zulässig:
booleanValue

boolean

Optional. Boolescher Variantenwert.

integerValue

string (int64 format)

Optional. Ganzzahliger Variantenwert.

stringValue

string

Optional. String-Variantenwert.

doubleValue

number

Optional. Doppelter Variantenwert.

LabelsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

AnnotationsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

Zeitstempel

JSON-Darstellung
{
  "seconds": string,
  "nanos": integer
}
Felder
seconds

string (int64 format)

Stellt Sekunden der UTC-Zeit seit Unix-Epoche 1970-01-01T00:00:00Z dar. Muss einschließlich zwischen -62135596800 und 253402300799 liegen (entspricht 0001-01-01T00:00:00Z bis 9999-12-31T23:59:59Z).

nanos

integer

Nicht negative Sekundenbruchteile Nanosekunden-Auflösung. Dieses Feld enthält den Nanosekundenanteil der Dauer und ist keine Alternative zu Sekunden. Negative Sekundenwerte mit Bruchteilen müssen weiterhin nicht negative Nano-Werte haben, die zeitlich vorwärts gezählt werden. Muss zwischen 0 und 999.999.999 liegen (einschließlich).

LabelsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

AnnotationsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

Tool-Annotationen

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Nur-Lese-Hinweis: ✅ | Open-World-Hinweis: ❌