MCP Tools Reference: saasservicemgmt

Strumento: create_unit

Crea una risorsa Unit. Parametri obbligatori: "parent" (ad es. projects/my-project/locations/us-central1), "unit_id", "unit". Parametri facoltativi: "validate_only", "request_id".

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

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": "create_unit",
    "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 CreateUnit.

CreateUnitRequest

Rappresentazione JSON
{
  "parent": string,
  "unitId": string,
  "unit": {
    object (Unit)
  },
  "validateOnly": boolean,
  "requestId": string
}
Campi
parent

string

Obbligatorio. L'unità principale.

unitId

string

Obbligatorio. Il valore ID della nuova unità.

unit

object (Unit)

Obbligatorio. Lo stato desiderato per l'unità.

validateOnly

boolean

Se "validate_only" è impostato su true, il servizio tenterà di convalidare che questa richiesta andrà a buon fine, ma non apporterà modifiche.

requestId

string

Un ID richiesta facoltativo per identificare le richieste. Specifica un ID richiesta univoco in modo che, se devi riprovare a inviare la richiesta, il server sappia che deve ignorarla se è già stata completata. Il server garantirà di ignorare la seconda richiesta per almeno 60 minuti dopo la prima.

Ad esempio, considera una situazione in cui effettui una richiesta iniziale e questa scade. Se effettui nuovamente la richiesta con lo stesso ID richiesta, il server può verificare se l'operazione originale con lo stesso ID richiesta è stata ricevuta e, in caso affermativo, ignorerà la seconda richiesta. In questo modo, i client non creano impegni duplicati per errore.

L'ID richiesta deve essere un UUID valido, ad eccezione dell'UUID zero, che non è supportato (00000000-0000-0000-0000-000000000000).

Unità

Rappresentazione JSON
{
  "name": string,
  "unitKind": string,
  "release": string,
  "tenant": string,
  "ongoingOperations": [
    string
  ],
  "pendingOperations": [
    string
  ],
  "scheduledOperations": [
    string
  ],
  "dependents": [
    {
      object (UnitDependency)
    }
  ],
  "dependencies": [
    {
      object (UnitDependency)
    }
  ],
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ],
  "outputVariables": [
    {
      object (UnitVariable)
    }
  ],
  "maintenance": {
    object (MaintenanceSettings)
  },
  "state": enum (UnitState),
  "conditions": [
    {
      object (UnitCondition)
    }
  ],
  "managementMode": enum (ManagementMode),
  "systemManagedState": enum (SystemManagedState),
  "systemCleanupAt": string,
  "flagRevisions": [
    string
  ],
  "application": string,
  "flagConfigName": string,
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "satisfiesPzs": boolean,
  "satisfiesPzi": boolean
}
Campi
name

string

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

"projects/{project}/locations/{location}/units/{unit}"

unitKind

string

Facoltativo. Riferimento al tipo di unità a cui appartiene questa unità. Immutabile una volta impostato.

release

string

Facoltativo. Solo output. L'oggetto Release corrente per questa unità.

tenant

string

Facoltativo. Riferimento alla risorsa Tenant SaaS a cui appartiene questa unità. Ad esempio, indica le policy di manutenzione da utilizzare per pianificare gli aggiornamenti futuri su un'unità. (facoltativo e non modificabile una volta creato)

ongoingOperations[]

string

Facoltativo. Solo output. Elenco delle operazioni unità simultanee che operano su questa unità.

pendingOperations[]

string

Facoltativo. Solo output. Elenco delle UnitOperation in attesa (da eseguire) per questa unità.

scheduledOperations[]

string

Facoltativo. Solo output. Elenco delle UnitOperation pianificate per questa unità.

dependents[]

object (UnitDependency)

Facoltativo. Solo output. Elenco delle unità che dipendono da questa unità. L'unità può essere deprovisioning solo se questo elenco è vuoto. Massimo 1000.

dependencies[]

object (UnitDependency)

Facoltativo. Solo output. Insieme di dipendenze per questa unità. Massimo 10.

inputVariables[]

object (UnitVariable)

Facoltativo. Solo output. Indica le variabili di input correnti implementate dall'unità

outputVariables[]

object (UnitVariable)

Facoltativo. Solo output. Set di coppie chiave/valore corrispondenti alle variabili di output dell'esecuzione dei modelli di attuazione. Le variabili vengono dichiarate nelle configurazioni di attivazione (ad es.nel grafico Helm o in Terraform) e i valori vengono recuperati e restituiti dal motore di attivazione al termine dell'esecuzione.

maintenance

object (MaintenanceSettings)

Facoltativo. Acquisisce le direttive richieste per eseguire la manutenzione futura dell'unità. Ciò include una richiesta all'unità di saltare la manutenzione per un periodo di tempo e rimanere bloccata sulla release attuale, nonché controlli per posticipare la manutenzione pianificata in futuro.

state

enum (UnitState)

Facoltativo. Solo output. Stato attuale del ciclo di vita della risorsa (ad es. se è in fase di creazione o pronta all'uso).

conditions[]

object (UnitCondition)

Facoltativo. Solo output. Un insieme di condizioni che indicano le varie condizioni che questa risorsa può avere.

managementMode

enum (ManagementMode)

Facoltativo. Immutabile. Indica se il ciclo di vita dell'unità è controllato dall'utente o dal sistema. Immutabile una volta creato.

systemManagedState

enum (SystemManagedState)

Facoltativo. Solo output. Indica lo stato gestito dal sistema dell'unità.

systemCleanupAt

string (Timestamp format)

Facoltativo. Solo output. Se impostata, indica l'ora in cui il sistema inizierà a rimuovere l'unità.

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".

flagRevisions[]

string

Facoltativo. Solo output. Revisioni dei flag utilizzate da questa unità.

application

string

Facoltativo. Riferimento all'applicazione App Hub a cui appartiene questa unità. Tutte le risorse di cui è stato eseguito il deployment in questa unità verranno associate all'applicazione specificata.

flagConfigName

string

Solo output. Questo campo memorizza l'identificatore univoco della configurazione del flag da utilizzare per questa unità.

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".

satisfiesPzs

boolean

Solo output. Indica se la località della risorsa soddisfa i vincoli di separazione delle zone. Questa opzione è disattivata per impostazione predefinita.

satisfiesPzi

boolean

Solo output. Riservato per l'uso futuro.

UnitDependency

Rappresentazione JSON
{
  "alias": string,
  "unit": string
}
Campi
alias

string

Solo output. Alias per il nome della dipendenza.

unit

string

Solo output. Un riferimento all'oggetto Unit.

UnitVariable

Rappresentazione JSON
{
  "variable": string,
  "type": enum (Type),
  "value": string
}
Campi
variable

string

Obbligatorio. Immutabile. Nome della variabile dalle configurazioni di attuazione.

type

enum (Type)

Facoltativo. Immutabile. Nome di un tipo di variabile supportato. I tipi supportati sono stringa, int e bool.

value

string

Facoltativo. Valore codificato della stringa per la variabile.

MaintenanceSettings

Rappresentazione JSON
{
  "pinnedUntilTime": string
}
Campi
pinnedUntilTime

string (Timestamp format)

Facoltativo. Se presente, fissa la data di release dell'unità fino alla data/ora specificata, ad esempio le modifiche al campo della release verranno rifiutate. Le implementazioni devono e rispetteranno questa impostazione, dato che non richiederanno un upgrade.

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".

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.

UnitCondition

Rappresentazione JSON
{
  "status": enum (Status),
  "type": enum (Type),
  "lastTransitionTime": string,
  "message": string,
  "reason": string
}
Campi
status

enum (Status)

Obbligatorio. Stato della condizione.

type

enum (Type)

Obbligatorio. Il tipo di condizione.

lastTransitionTime

string (Timestamp format)

Obbligatorio. L'ultima volta che la condizione è passata da uno stato all'altro.

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".

message

string

Obbligatorio. Messaggio leggibile che indica i dettagli dell'ultima transizione.

reason

string

Obbligatorio. Breve motivo dell'ultima transizione della condizione.

LabelsEntry

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

string

value

string

AnnotationsEntry

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

string

value

string

Schema di output

Un'unità di deployment che ha il suo ciclo di vita tramite un'API CRUD che utilizza un motore di attivazione sottostante (ad es. basato su Terraform, Helm o un'implementazione personalizzata fornita da un producer di servizi). Un componente di base di un tenant SaaS.

Unità

Rappresentazione JSON
{
  "name": string,
  "unitKind": string,
  "release": string,
  "tenant": string,
  "ongoingOperations": [
    string
  ],
  "pendingOperations": [
    string
  ],
  "scheduledOperations": [
    string
  ],
  "dependents": [
    {
      object (UnitDependency)
    }
  ],
  "dependencies": [
    {
      object (UnitDependency)
    }
  ],
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ],
  "outputVariables": [
    {
      object (UnitVariable)
    }
  ],
  "maintenance": {
    object (MaintenanceSettings)
  },
  "state": enum (UnitState),
  "conditions": [
    {
      object (UnitCondition)
    }
  ],
  "managementMode": enum (ManagementMode),
  "systemManagedState": enum (SystemManagedState),
  "systemCleanupAt": string,
  "flagRevisions": [
    string
  ],
  "application": string,
  "flagConfigName": string,
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "satisfiesPzs": boolean,
  "satisfiesPzi": boolean
}
Campi
name

string

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

"projects/{project}/locations/{location}/units/{unit}"

unitKind

string

Facoltativo. Riferimento al tipo di unità a cui appartiene questa unità. Immutabile una volta impostato.

release

string

Facoltativo. Solo output. L'oggetto Release corrente per questa unità.

tenant

string

Facoltativo. Riferimento alla risorsa Tenant SaaS a cui appartiene questa unità. Ad esempio, indica le policy di manutenzione da utilizzare per pianificare gli aggiornamenti futuri su un'unità. (facoltativo e non modificabile una volta creato)

ongoingOperations[]

string

Facoltativo. Solo output. Elenco delle operazioni unità simultanee che operano su questa unità.

pendingOperations[]

string

Facoltativo. Solo output. Elenco delle UnitOperation in attesa (da eseguire) per questa unità.

scheduledOperations[]

string

Facoltativo. Solo output. Elenco delle UnitOperation pianificate per questa unità.

dependents[]

object (UnitDependency)

Facoltativo. Solo output. Elenco delle unità che dipendono da questa unità. L'unità può essere deprovisioning solo se questo elenco è vuoto. Massimo 1000.

dependencies[]

object (UnitDependency)

Facoltativo. Solo output. Insieme di dipendenze per questa unità. Massimo 10.

inputVariables[]

object (UnitVariable)

Facoltativo. Solo output. Indica le variabili di input correnti implementate dall'unità

outputVariables[]

object (UnitVariable)

Facoltativo. Solo output. Set di coppie chiave/valore corrispondenti alle variabili di output dell'esecuzione dei modelli di attuazione. Le variabili vengono dichiarate nelle configurazioni di attivazione (ad es.nel grafico Helm o in Terraform) e i valori vengono recuperati e restituiti dal motore di attivazione al termine dell'esecuzione.

maintenance

object (MaintenanceSettings)

Facoltativo. Acquisisce le direttive richieste per eseguire la manutenzione futura dell'unità. Ciò include una richiesta all'unità di saltare la manutenzione per un periodo di tempo e rimanere bloccata sulla release attuale, nonché controlli per posticipare la manutenzione pianificata in futuro.

state

enum (UnitState)

Facoltativo. Solo output. Stato attuale del ciclo di vita della risorsa (ad es. se è in fase di creazione o pronta all'uso).

conditions[]

object (UnitCondition)

Facoltativo. Solo output. Un insieme di condizioni che indicano le varie condizioni che questa risorsa può avere.

managementMode

enum (ManagementMode)

Facoltativo. Immutabile. Indica se il ciclo di vita dell'unità è controllato dall'utente o dal sistema. Immutabile una volta creato.

systemManagedState

enum (SystemManagedState)

Facoltativo. Solo output. Indica lo stato gestito dal sistema dell'unità.

systemCleanupAt

string (Timestamp format)

Facoltativo. Solo output. Se impostata, indica l'ora in cui il sistema inizierà a rimuovere l'unità.

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".

flagRevisions[]

string

Facoltativo. Solo output. Revisioni dei flag utilizzate da questa unità.

application

string

Facoltativo. Riferimento all'applicazione App Hub a cui appartiene questa unità. Tutte le risorse di cui è stato eseguito il deployment in questa unità verranno associate all'applicazione specificata.

flagConfigName

string

Solo output. Questo campo memorizza l'identificatore univoco della configurazione del flag da utilizzare per questa unità.

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".

satisfiesPzs

boolean

Solo output. Indica se la località della risorsa soddisfa i vincoli di separazione delle zone. Questa opzione è disattivata per impostazione predefinita.

satisfiesPzi

boolean

Solo output. Riservato per l'uso futuro.

UnitDependency

Rappresentazione JSON
{
  "alias": string,
  "unit": string
}
Campi
alias

string

Solo output. Alias per il nome della dipendenza.

unit

string

Solo output. Un riferimento all'oggetto Unit.

UnitVariable

Rappresentazione JSON
{
  "variable": string,
  "type": enum (Type),
  "value": string
}
Campi
variable

string

Obbligatorio. Immutabile. Nome della variabile dalle configurazioni di attuazione.

type

enum (Type)

Facoltativo. Immutabile. Nome di un tipo di variabile supportato. I tipi supportati sono stringa, int e bool.

value

string

Facoltativo. Valore codificato della stringa per la variabile.

MaintenanceSettings

Rappresentazione JSON
{
  "pinnedUntilTime": string
}
Campi
pinnedUntilTime

string (Timestamp format)

Facoltativo. Se presente, fissa la data di release dell'unità fino alla data/ora specificata, ad esempio le modifiche al campo della release verranno rifiutate. Le implementazioni devono e rispetteranno questa impostazione, dato che non richiederanno un upgrade.

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".

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.

UnitCondition

Rappresentazione JSON
{
  "status": enum (Status),
  "type": enum (Type),
  "lastTransitionTime": string,
  "message": string,
  "reason": string
}
Campi
status

enum (Status)

Obbligatorio. Stato della condizione.

type

enum (Type)

Obbligatorio. Il tipo di condizione.

lastTransitionTime

string (Timestamp format)

Obbligatorio. L'ultima volta che la condizione è passata da uno stato all'altro.

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".

message

string

Obbligatorio. Messaggio leggibile che indica i dettagli dell'ultima transizione.

reason

string

Obbligatorio. Breve motivo dell'ultima transizione della condizione.

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: ❌