MCP Tools Reference: saasservicemgmt

Strumento: get_flag_revision

Recupera una risorsa FlagRevision. Parametro obbligatorio: "name" (ad es. projects/my-project/locations/us-central1/flagRevisions/my-flagrevision).

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP get_flag_revision.

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

Schema di input

La struttura della richiesta per il metodo GetFlagRevision.

GetFlagRevisionRequest

Rappresentazione JSON
{
  "name": string
}
Campi
name

string

Obbligatorio. Nome della risorsa all'interno di un servizio.

Schema di output

Uno snapshot di EvaluationSpec per Flag.

FlagRevision

Rappresentazione 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
}
Campi
name

string

Identificatore. Il nome della risorsa (URI completo della risorsa) che segue lo schema di denominazione standard:

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

flag

string

Obbligatorio. Immutabile. Nome dell'Flag di cui si tratta di una revisione.

evaluationSpec
(deprecated)

object (EvaluationSpec)

Solo output. Immutabile. Snapshot di EvaluationSpec per flag. DEPRECATO: utilizza lo snapshot.

snapshot

object (Flag)

Solo output. Immutabile. Snapshot di Flag.

labels

map (key: string, value: string)

Facoltativo. Le etichette sulla risorsa, che possono essere utilizzate per la categorizzazione, simili alle etichette delle risorse Kubernetes.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Facoltativo. Le annotazioni sono una mappa chiave-valore non strutturata archiviata con una risorsa che può essere impostata da strumenti esterni per archiviare e recuperare metadati arbitrari. Non sono interrogabili e devono essere conservati durante la modifica degli oggetti.

Scopri di più: https://kubernetes.io/docs/user-guide/annotations

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Solo output. Identificatore unico della risorsa. L'UID è unico nello spazio e nel tempo per questa risorsa nell'ambito del servizio. Viene tipicamente generato dal server durante la creazione di una risorsa e non deve essere modificato. L'UID viene utilizzato per identificare in modo unico le risorse quando i nomi risorsa vengono riutilizzati. Deve essere un UUID4.

etag

string

Solo output. Valore opaco che identifica in modo unico una versione o generazione di una risorsa. Può essere usato per confermare che client e server concordano nell'ordine di una risorsa in fase di scrittura.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione della risorsa.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo output. Timestamp dell'ultimo aggiornamento della risorsa. Qualsiasi modifica apportata alla risorsa dagli utenti deve aggiornare questo valore. Le modifiche a una risorsa apportate dal servizio devono aggiornare questo valore.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

EvaluationSpec

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

object (Variant)

Facoltativo. Un elenco di varianti.

defaultTarget

string

Obbligatorio. Variante o allocazione predefinita del flag.

allocations[]

object (Allocation)

Facoltativo. Un elenco di allocazioni.

rules[]

object (EvaluationRule)

Facoltativo. Le regole di valutazione definiscono la logica per valutare il flag in base a un determinato contesto. Le regole vengono valutate in sequenza nell'ordine specificato.

attributes[]

string

Facoltativo. Nomi degli attributi di contesto utilizzati nelle regole di valutazione e nelle allocazioni.

Variante

Rappresentazione 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.
}
Campi
name

string

Obbligatorio. Nome della variante. Lunghezza massima: 128 byte.

Campo unione value. value è un singolo valore del flag per la variante. value può essere solo uno dei seguenti tipi:
boolValue

boolean

Facoltativo. Valore del flag booleano.

intValue

string (int64 format)

Facoltativo. Valore del flag intero.

stringValue

string

Facoltativo. Valore flag stringa.

doubleValue

number

Facoltativo. Valore flag doppio.

Allocazione

Rappresentazione JSON
{
  "id": string,
  "randomizedOn": string,
  "description": string,
  "slots": [
    {
      object (AllocationSlot)
    }
  ]
}
Campi
id

string

Obbligatorio. ID allocazione. Lunghezza massima: 128 byte.

randomizedOn

string

Obbligatorio. Chiave dell'attributo di contesto utilizzato per la suddivisione del traffico.

description

string

Facoltativo. Descrizione dell'assegnazione. Lunghezza massima: 500 byte.

slots[]

object (AllocationSlot)

Obbligatorio. Gli slot definiscono la distribuzione ponderata delle varianti.

AllocationSlot

Rappresentazione JSON
{
  "variant": string,
  "weight": integer
}
Campi
variant

string

Obbligatorio. Variante dello slot di allocazione.

weight

integer

Obbligatorio. La ponderazione definisce la proporzione di traffico da allocare alla variante, rispetto agli altri slot della stessa allocazione.

EvaluationRule

Rappresentazione JSON
{
  "id": string,
  "condition": string,
  "target": string
}
Campi
id

string

Obbligatorio. ID regola di valutazione. Lunghezza massima: 128 byte.

condition

string

Obbligatorio. Un'espressione Common Expression Language (CEL) che restituisce un valore booleano. L'espressione viene valutata in base al contesto fornito. Se restituisce true, viene applicato il target della regola.

target

string

Obbligatorio. La variante di destinazione o l'allocazione da applicare se la condizione è soddisfatta. Deve corrispondere al nome di una variante definita o all'ID dell'allocazione.

Flag

Rappresentazione 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
}
Campi
name

string

Identificatore. Il nome della risorsa (URI completo della risorsa) che segue lo schema di denominazione standard:

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

key

string

Obbligatorio. Immutabile. Chiave flag utilizzata nelle API di valutazione di runtime (OpenFeature). Lunghezza massima: 256 byte.

valueType
(deprecated)

enum (FlagValueType)

Facoltativo. Immutabile. Deprecato: utilizza flag_value_type. Tipo di valore del flag.

flagValueType

enum (ValueType)

Facoltativo. Immutabile. Tipo di valore del flag.

evaluationSpec

object (EvaluationSpec)

Facoltativo. Specifica di come deve essere valutato il valore del flag.

Se viene creato un flag booleano senza specificare un evaluation_spec, vengono create per impostazione predefinita due varianti predefinite, "Enabled" (con bool_value = true) e "Disabled" (con bool_value = false), e "Disabled" viene impostata come default_target.

unitKind

string

Obbligatorio. Immutabile. UnitKind che può utilizzare questo flag.

description

string

Facoltativo. Descrizione del flag. Lunghezza massima: 500 byte.

variants[]

object (FlagVariant)

Facoltativo. Un elenco di varianti.

flagSet

string

Facoltativo. Il set di flag a cui appartiene questo flag.

state

enum (State)

Facoltativo. Stato attuale del flag.

labels

map (key: string, value: string)

Facoltativo. Le etichette sulla risorsa, che possono essere utilizzate per la categorizzazione, simili alle etichette delle risorse Kubernetes.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Facoltativo. Le annotazioni sono una mappa chiave-valore non strutturata archiviata con una risorsa che può essere impostata da strumenti esterni per archiviare e recuperare metadati arbitrari. Non sono interrogabili e devono essere conservati durante la modifica degli oggetti.

Scopri di più: https://kubernetes.io/docs/user-guide/annotations

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Solo output. Identificatore unico della risorsa. L'UID è unico nello spazio e nel tempo per questa risorsa nell'ambito del servizio. Viene tipicamente generato dal server durante la creazione di una risorsa e non deve essere modificato. L'UID viene utilizzato per identificare in modo unico le risorse quando i nomi risorsa vengono riutilizzati. Deve essere un UUID4.

etag

string

Solo output. Valore opaco che identifica in modo unico una versione o generazione di una risorsa. Può essere usato per confermare che client e server concordano nell'ordine di una risorsa in fase di scrittura.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione della risorsa.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo output. Timestamp dell'ultimo aggiornamento della risorsa. Qualsiasi modifica apportata alla risorsa dagli utenti deve aggiornare questo valore. Le modifiche a una risorsa apportate dal servizio devono aggiornare questo valore.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

FlagVariant

Rappresentazione 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.
}
Campi
id

string

Obbligatorio. ID variante. Lunghezza massima: 128 byte.

trackingId

string

(Facoltativo) trackingId è univoco a seconda del nome e del valore della variante nell'ambito del servizio. Viene tipicamente generato dal server e non deve essere modificato. trackingId viene utilizzato per identificare e monitorare in modo univoco le varianti.

description

string

Facoltativo. Una descrizione leggibile di cosa fa o rappresenta questa variante.

Campo unione value. value è un singolo valore del flag per la variante. value può essere solo uno dei seguenti tipi:
booleanValue

boolean

Facoltativo. Valore della variante booleana.

integerValue

string (int64 format)

Facoltativo. Valore della variante intera.

stringValue

string

Facoltativo. Valore della variante stringa.

doubleValue

number

Facoltativo. Valore della variante doppio.

LabelsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

AnnotationsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la porzione di nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

LabelsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

AnnotationsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

Annotazioni dello strumento

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌