工具:get_flag_revision
取得 FlagRevision 資源。必要參數:'name' (例如 projects/my-project/locations/us-central1/flagRevisions/my-flagrevision)。
以下範例示範如何使用 curl 叫用 get_flag_revision MCP 工具。
| 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 }' |
輸入內容的結構定義
GetFlagRevision 方法的要求結構。
GetFlagRevisionRequest
| JSON 表示法 |
|---|
{ "name": string } |
| 欄位 | |
|---|---|
name |
這是必要旗標,服務內資源的名稱。 |
輸出內容的結構定義
Flag的 EvaluationSpec 快照。
FlagRevision
| JSON 表示法 |
|---|
{ "name": string, "flag": string, "evaluationSpec": { object ( |
| 欄位 | |
|---|---|
name |
ID。資源名稱 (資源的完整 URI),遵循標準命名架構: "projects/{project}/locations/{location}/flagRevisions/{flag_revision_id}" |
flag |
這是必要旗標,不可變動。 |
evaluationSpec |
僅供輸出。不可變動。 |
snapshot |
僅供輸出。不可變動。「 |
labels |
選用。資源上的標籤,可用於分類,類似於 Kubernetes 資源標籤。 包含 |
annotations |
選用。註解是與資源一起儲存的非結構化鍵/值對應,外部工具可能會設定註解,用來儲存及擷取任意中繼資料。這些屬性無法查詢,修改物件時應保留這些屬性。 詳情請參閱:https://kubernetes.io/docs/user-guide/annotations 包含 |
uid |
僅供輸出。資源專屬識別碼。在服務範圍內,這項資源適用的時間和空間中,UID 是獨一無二的。UID 通常是由伺服器在成功建立資源時產生,且不可變更。資源名稱會重複使用,因此您可以使用 UID 明確識別資源。這應為 UUID4。 |
etag |
僅供輸出。能明確識別版本或產生資源的不透明值。可用來確認用戶端和伺服器同意寫入資源的順序。 |
createTime |
僅供輸出。資源的建立時間戳記。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
updateTime |
僅供輸出。資源上次更新時間的時間戳記。如果使用者對資源做了任何變更,系統就會更新這個值。如果服務對資源做了變更,系統也會更新這個值。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
EvaluationSpec
| JSON 表示法 |
|---|
{ "variants": [ { object ( |
| 欄位 | |
|---|---|
variants[] |
選用。變化版本清單。 |
defaultTarget |
這是必要旗標,旗標的預設變體或分配。 |
allocations[] |
選用。分配清單。 |
rules[] |
選用。評估規則會定義邏輯,根據指定脈絡評估旗標。系統會按照指定順序逐一評估規則。 |
attributes[] |
選用。評估規則和分配作業中使用的內容屬性名稱。 |
變化版本
| JSON 表示法 |
|---|
{ "name": string, // Union field |
| 欄位 | |
|---|---|
name |
這是必要旗標,變體名稱。長度上限:128 個位元組。 |
聯集欄位 value。值是變體的單一旗標值。value 只能是下列其中一個設定: |
|
boolValue |
選用。布林旗標值。 |
intValue |
選用。整數旗標值。 |
stringValue |
選用。字串旗標值。 |
doubleValue |
選用。雙重旗標值。 |
配置的資源
| JSON 表示法 |
|---|
{
"id": string,
"randomizedOn": string,
"description": string,
"slots": [
{
object ( |
| 欄位 | |
|---|---|
id |
這是必要旗標,分配 ID。長度上限:128 個位元組。 |
randomizedOn |
這是必要旗標,用於拆分流量的內容屬性鍵。 |
description |
選用。分配的說明。長度上限:500 個位元組。 |
slots[] |
這是必要旗標,「位置」定義變體的加權分配。 |
AllocationSlot
| JSON 表示法 |
|---|
{ "variant": string, "weight": integer } |
| 欄位 | |
|---|---|
variant |
這是必要旗標,分配運算單元的變體。 |
weight |
這是必要旗標,權重會定義要分配給變體的流量比例,相對於相同分配中的其他廣告空間。 |
EvaluationRule
| JSON 表示法 |
|---|
{ "id": string, "condition": string, "target": string } |
| 欄位 | |
|---|---|
id |
這是必要旗標,評估規則 ID。長度上限:128 個位元組。 |
condition |
這是必要旗標,一般運算語言 (CEL) 運算式,評估結果為布林值。系統會根據提供的脈絡評估運算式。如果傳回 true,系統就會套用規則的目標。 |
target |
這是必要旗標,如果符合條件,要套用的目標變化版本或分配比例。這應與已定義的變體或分配作業 ID 名稱相符。 |
標記
| JSON 表示法 |
|---|
{ "name": string, "key": string, "valueType": enum ( |
| 欄位 | |
|---|---|
name |
ID。資源名稱 (資源的完整 URI),遵循標準命名架構: "projects/{project}/locations/{location}/flags/{flag_id}" |
key |
這是必要旗標,不可變動。用於執行階段評估作業 API 的旗標鍵 (OpenFeature)。長度上限:256 個位元組。 |
valueType |
選用。不可變動。已淘汰:請改用 |
flagValueType |
選用。不可變動。旗標值類型。 |
evaluationSpec |
選用。指定如何評估旗標值。 如果建立布林值旗標時未指定 evaluation_spec,系統會依預設建立兩個預設變體:「已啟用」(bool_value = true) 和「已停用」(bool_value = false),並將「已停用」設為 default_target。 |
unitKind |
這是必要旗標,不可變動。 |
description |
選用。旗標說明。長度上限:500 個位元組。 |
variants[] |
選用。變化版本清單。 |
flagSet |
選用。這個旗標所屬的旗標集。 |
state |
選用。旗標的目前狀態。 |
labels |
選用。資源上的標籤,可用於分類,類似於 Kubernetes 資源標籤。 包含 |
annotations |
選用。註解是與資源一起儲存的非結構化鍵/值對應,外部工具可能會設定註解,用來儲存及擷取任意中繼資料。這些屬性無法查詢,修改物件時應保留這些屬性。 詳情請參閱:https://kubernetes.io/docs/user-guide/annotations 包含 |
uid |
僅供輸出。資源專屬識別碼。在服務範圍內,這項資源適用的時間和空間中,UID 是獨一無二的。UID 通常是由伺服器在成功建立資源時產生,且不可變更。資源名稱會重複使用,因此您可以使用 UID 明確識別資源。這應為 UUID4。 |
etag |
僅供輸出。能明確識別版本或產生資源的不透明值。可用來確認用戶端和伺服器同意寫入資源的順序。 |
createTime |
僅供輸出。資源的建立時間戳記。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
updateTime |
僅供輸出。資源上次更新時間的時間戳記。如果使用者對資源做了任何變更,系統就會更新這個值。如果服務對資源做了變更,系統也會更新這個值。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
FlagVariant
| JSON 表示法 |
|---|
{ "id": string, "trackingId": string, "description": string, // Union field |
| 欄位 | |
|---|---|
id |
這是必要旗標,變體 ID。長度上限:128 個位元組。 |
trackingId |
選填。trackingId 會根據服務範圍內變體的名稱和值而有所不同。這個 ID 通常是由伺服器產生,且不得變更。trackingId 用於追蹤及識別變體。 |
description |
選用。使用者可理解的說明,指出這個變體的作用或代表的意義。 |
聯集欄位 value。值是變體的單一旗標值。value 只能是下列其中一個設定: |
|
booleanValue |
選用。布林變數值。 |
integerValue |
選用。整數變數值。 |
stringValue |
選用。字串變數值。 |
doubleValue |
選用。子類值重複。 |
LabelsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
AnnotationsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
時間戳記
| JSON 表示法 |
|---|
{ "seconds": string, "nanos": integer } |
| 欄位 | |
|---|---|
seconds |
代表自 Unix 紀元 1970-01-01T00:00:00Z 起算的世界標準時間秒數。必須介於 -62135596800 和 253402300799 之間 (含),對應至 0001-01-01T00:00:00Z 至 9999-12-31T23:59:59Z。 |
nanos |
以奈秒為單位的非負秒數小數。這個欄位是時間長度的奈秒部分,並非秒數的替代值。如果秒數值為負數,且包含小數,奈秒值仍須為非負數,且會向前計時。必須介於 0 至 999,999,999 之間 (含)。 |
LabelsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
AnnotationsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 欄位 | |
|---|---|
key |
|
value |
|
工具註解
破壞性提示:❌ | 等冪提示:✅ | 唯讀提示:✅ | 開放世界提示:❌