← The evidence ledger
Evidence row 523397
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint c2dacf2e-7df7-4089-b7be-286084499998
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- 9821f9ea1f4ccfe050294c0836b2bec83acf4e990f5ab5cf50243d23fd0b96be
- Leaf
- 0x6bf7251345787c17b7f3f6cafdae74fbc3dad56278be4add3b90df96347934c2
What was observed
{
"count": 23,
"tools": [
{
"description": "Applies a Kubernetes manifest to a cluster using server-side apply. This is similar to running `kubectl apply --server-side`.",
"inputSchema": {
"description": "KubeApplyRequest is the request message for applying Kubernetes manifests.",
"properties": {
"dryRun": {
"description": "Optional. If true, run in dry-run mode.",
"type": "boolean"
},
"forceConflicts": {
"description": "Optional. If true, force conflicts resolution when applying.",
"type": "boolean"
},
"parent": {
"description": "Required. The cluster to apply the manifest to. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"yamlManifest": {
"description": "Required. The YAML manifest to apply.",
"type": "string"
}
},
"required": [
"parent",
"yamlManifest"
],
"type": "object"
},
"name": "apply_k8s_manifest"
},
{
"description": "Cancels a specific GKE operation.",
"inputSchema": {
"description": "MCPCancelOperationRequest cancels an operation.",
"properties": {
"name": {
"description": "Required. The name (project, location, operation id) of the operation to cancel. Specified in the format `projects/*/locations/*/operations/*`.",
"type": "string"
},
"parent": {
"description": "Required. The parent cluster of the operation. Specified in the format `projects/*/locations/*/clusters/*`.",
"type": "string"
}
},
"required": [
"name",
"parent"
],
"type": "object"
},
"name": "cancel_operation"
},
{
"description": "Checks whether an action is allowed on a Kubernetes resource. This is similar to running `kubectl auth can-i`.",
"inputSchema": {
"description": "Request for checking authorization for a Kubernetes resource.",
"properties": {
"namespace": {
"description": "Optional. The namespace of the resource. If not specified, \"default\" is used for namespace-scoped resources.",
"type": "string"
},
"parent": {
"description": "Required. The cluster to check authorization against. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"resource": {
"description": "Optional. The name of the resource to check.",
"type": "string"
},
"resourceType": {
"description": "Required. The type of resource to check. e.g. \"pods\", \"deployments\", \"services\".",
"type": "string"
},
"verb": {
"description": "Required. The verb to check. e.g. \"get\", \"list\", \"watch\", \"create\", \"update\", \"patch\", \"delete\".",
"type": "string"
}
},
"required": [
"parent",
"verb",
"resourceType"
],
"type": "object"
},
"name": "check_k8s_auth"
},
{
"description": "Creates a new GKE cluster in a given project and location. It's recommended to read the [GKE documentation](https://docs.cloud.google.com/kubernetes-engine/docs/concepts/configuration-overview) to understand cluster configuration options. Cluster creation will default to Autopilot mode, as recommended by GKE best practices. If the user explicitly wants to create a Standard cluster, you need to set autopilot.enabled=false in the cluster configuration. This is similar to running `gcloud container clusters create-auto` or `gcloud container clusters create`.\n",
"inputSchema": {
"description": "MCPCreateClusterRequest creates a new cluster.",
"properties": {
"cluster": {
"description": "Required. A [cluster resource](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters) represented as a string using JSON format.",
"type": "string"
},
"parent": {
"description": "Required. The parent (project and location) where the cluster will be created. Specified in the format `projects/*/locations/*`.",
"type": "string"
}
},
"required": [
"parent",
"cluster"
],
"type": "object"
},
"name": "create_cluster"
},
{
"description": "Creates a node pool for a specific GKE cluster.",
"inputSchema": {
"description": "MCPCreateNodePoolRequest creates a node pool for a cluster.",
"properties": {
"nodePool": {
"description": "Required. The node pool to create represented as a string using JSON format. The full node pool object can be found at https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools",
"type": "string"
},
"parent": {
"description": "Required. The parent (project, location, cluster name) where the node pool will be created. Specified in the format `projects/*/locations/*/clusters/*`.",
"type": "string"
}
},
"required": [
"parent",
"nodePool"
],
"type": "object"
},
"name": "create_node_pool"
},
{
"description": "Deletes a Kubernetes resource from a cluster. This is similar to running `kubectl delete`.",
"inputSchema": {
"description": "Request for deleting Kubernetes resources.",
"properties": {
"cascade": {
"description": "Optional. The cascading deletion policy to use. If not specified, 'background' is used. Valid values are 'background', 'foreground', and 'orphan'.",
"type": "string"
},
"dryRun": {
"description": "Optional. If true, run in dry-run mode.",
"type": "boolean"
},
"name": {
"description": "Required. The name of the resource to delete.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource. If not specified, \"default\" is used.",
"type": "string"
},
"parent": {
"description": "Required. The cluster, which owns this collection of resources. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"resourceType": {
"description": "Required. The type of resource to delete. Kubernetes resource/kind name in singular form, lower case. e.g. \"pod\", \"deployment\", \"service\".",
"type": "string"
}
},
"required": [
"parent",
"resourceType",
"name"
],
"type": "object"
},
"name": "delete_k8s_resource"
},
{
"description": "Shows the details of a specific Kubernetes resource. This is similar to running `kubectl describe`.",
"inputSchema": {
"description": "Request message for KubeDescribe.",
"properties": {
"labelSelector": {
"description": "Optional. A label selector to filter resources.",
"type": "string"
},
"name": {
"description": "Optional. The name of the resource.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource.",
"type": "string"
},
"parent": {
"description": "Required. The parent cluster.",
"type": "string"
},
"resourceType": {
"description": "Required. The type of the resource.",
"type": "string"
}
},
"required": [
"parent",
"resourceType"
],
"type": "object"
},
"name": "describe_k8s_resource"
},
{
"description": "Gets the details of a specific GKE cluster.",
"inputSchema": {
"description": "MCPGetClusterRequest gets the settings of a cluster.",
"properties": {
"name": {
"description": "Required. The name (project, location, cluster) of the cluster to retrieve. Specified in the format `projects/*/locations/*/clusters/*`.",
"type": "string"
},
"readMask": {
"description": "Optional. The field mask to specify the fields to be returned in the response. Use a single \"*\" to get all fields. Default: autopilot,createTime,currentMasterVersion,currentNodeCount,currentNodeVersion,description,endpoint,fleet,location,name,network,nodePools.locations,nodePools.name,nodePools.status,nodePools.version,releaseChannel,resourceLabels,selfLink,status,statusMessage,subnetwork.",
"format": "google-fieldmask",
"pattern": "^(\\s*[^,\\s.]+(\\s*[,.]\\s*[^,\\s.]+)*)?$",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"name": "get_cluster"
},
{
"description": "Gets cluster endpoint information. This is similar to running `kubectl cluster-info`.",
"inputSchema": {
"description": "Request message for KubeClusterInfo.",
"properties": {
"parent": {
"description": "Required. The parent cluster. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "get_k8s_cluster_info"
},
{
"description": "Gets logs from a Kubernetes container in a pod. This is similar to running `kubectl logs`.",
"inputSchema": {
"description": "KubeLogsRequest is the request message for retrieving Kubernetes logs.",
"properties": {
"allContainers": {
"description": "Optional. If true, retrieve logs from all containers in the pod.",
"type": "boolean"
},
"container": {
"description": "Optional. The name of the container to retrieve logs from. If not specified, logs from the first container are returned.",
"type": "string"
},
"name": {
"description": "Required. The name of the resource to retrieve logs from. This can be a pod name (e.g. \"my-pod\") or a type/name (e.g. \"deployment/my-deployment\"). If a type is not specified, \"pod\" is assumed.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource. If not specified, \"default\" is used.",
"type": "string"
},
"parent": {
"description": "Required. The cluster to retrieve logs from. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"previous": {
"description": "Optional. If true, retrieve logs from the previous instantiation of the container.",
"type": "boolean"
},
"since": {
"description": "Optional. Retrieve logs since this duration ago (e.g. \"1h\", \"10m\").",
"format": "google-duration",
"type": "string"
},
"sinceTime": {
"description": "Optional. Retrieve logs since this time (RFC3339). e.g. \"2024-08-30T06:00:00Z\".",
"format": "date-time",
"type": "string"
},
"tail": {
"description": "Optional. The number of lines from the end of the logs to show.",
"format": "int64",
"type": "string"
},
"timestamps": {
"description": "Optional. If true, include timestamps in the log output.",
"type": "boolean"
}
},
"required": [
"parent",
"name"
],
"type": "object"
},
"name": "get_k8s_logs"
},
{
"description": "Gets one or more Kubernetes resources from a cluster. Resources can be filtered by type, name, namespace, and label selectors. Returns the resources in YAML format. This is similar to running `kubectl get`.",
"inputSchema": {
"description": "Request for retrieving Kubernetes resources.",
"properties": {
"customColumns": {
"description": "Optional. Custom columns to display in table output. Accepts either kubectl custom-columns format (e.g., \"NAME:.metadata.name,IMAGE:.spec.containers[*].image\") or comma-separated field names (e.g., \"metadata.name,spec.replicas\"). When both custom_columns and output_format are specified, output_format is ignored.",
"type": "string"
},
"fieldSelector": {
"description": "Optional. A field selector to filter resources.",
"type": "string"
},
"labelSelector": {
"description": "Optional. A label selector to filter resources.",
"type": "string"
},
"name": {
"description": "Optional. The name of the resource to retrieve. If not specified, all resources of the given type are returned.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource. If not specified, all namespaces are searched.",
"type": "string"
},
"outputFormat": {
"description": "Optional. The output format. One of: (table, wide, yaml, json). If not specified, defaults to table. When both custom_columns and output_format are specified, output_format is ignored.",
"enum": [
"OUTPUT_FORMAT_UNSPECIFIED",
"TABLE",
"WIDE",
"YAML",
"JSON"
],
"type": "string",
"x-google-enum-descriptions": [
"If not specified, defaults to table.",
"Output in table format.",
"Output in wide table format.",
"Output in yaml format.",
"Output in json format."
]
},
"pageSize": {
"description": "Optional. The maximum number of resources to return. If not specified, 500 is used. The maximum value is 1000; values above 1000 will be coerced to 1000.",
"format": "int32",
"type": "integer"
},
"pageToken": {
"description": "Optional. A page token, received from a previous `GetK8SResource` call. Provide this to retrieve the subsequent page of resources when listing resources. Cannot be used when `name` is specified.",
"type": "string"
},
"parent": {
"description": "Required. The cluster, which owns this collection of resources. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"resourceType": {
"description": "Required. The type of resource to retrieve. Kubernetes resource/kind name in singular form, lower case. e.g. \"pod\", \"deployment\", \"service\".",
"type": "string"
}
},
"required": [
"parent",
"resourceType"
],
"type": "object"
},
"name": "get_k8s_resource"
},
{
"description": "Checks the current rollout status of a Kubernetes resource. This is similar to running `kubectl rollout status`.",
"inputSchema": {
"description": "Request for checking rollout status of a Kubernetes resource.",
"properties": {
"name": {
"description": "Required. The name of the resource to check.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource. If not specified, \"default\" is used for namespace-scoped resources.",
"type": "string"
},
"parent": {
"description": "Required. The cluster to check rollout status in. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"resourceType": {
"description": "Required. The type of resource to check. e.g. \"deployment\", \"daemonset\", \"statefulset\".",
"type": "string"
}
},
"required": [
"parent",
"resourceType",
"name"
],
"type": "object"
},
"name": "get_k8s_rollout_status"
},
{
"description": "Retrieves Kubernetes client and server versions for a given cluster. This is similar to running `kubectl version`.",
"inputSchema": {
"description": "KubeVersionRequest is the request message for retrieving Kubernetes server versions.",
"properties": {
"parent": {
"description": "Required. The cluster to get version information from, in the format `projects/*/locations/*/clusters/*`.",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "get_k8s_version"
},
{
"description": "Gets the details of a specific node pool within a GKE cluster.",
"inputSchema": {
"description": "MCPGetNodePoolRequest retrieves a node pool for a cluster.",
"properties": {
"name": {
"description": "Required. The name (project, location, cluster, node pool id) of the node pool to get. Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"name": "get_node_pool"
},
{
"description": "Gets the details of a specific GKE operation.",
"inputSchema": {
"description": "MCPGetOperationRequest gets a single operation.",
"properties": {
"name": {
"description": "Required. The name (project, location, operation id) of the operation to get. Specified in the format `projects/*/locations/*/operations/*`.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"name": "get_operation"
},
{
"description": "Lists GKE clusters in a given project and location. Location can be a region, zone, or '-' for all locations.",
"inputSchema": {
"description": "MCPListClustersRequest lists clusters.",
"properties": {
"parent": {
"description": "Required. The parent (project and location) where the clusters will be listed. Specified in the format `projects/*/locations/*`. Location \"-\" matches all zones and all regions.",
"type": "string"
},
"readMask": {
"description": "Optional. The field mask to specify the fields to be returned in the response. Use a single \"*\" to get all fields. Default: clusters.autopilot,clusters.createTime,clusters.currentMasterVersion,clusters.currentNodeCount,clusters.currentNodeVersion,clusters.description,clusters.endpoint,clusters.fleet,clusters.location,clusters.name,clusters.network,clusters.nodePools.name,clusters.releaseChannel,clusters.resourceLabels,clusters.selfLink,clusters.status,clusters.statusMessage,clusters.subnetwork,missingZones.",
"format": "google-fieldmask",
"pattern": "^(\\s*[^,\\s.]+(\\s*[,.]\\s*[^,\\s.]+)*)?$",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "list_clusters"
},
{
"description": "Retrieves the available API groups and resources from a Kubernetes cluster. This is similar to running `kubectl api-resources`.",
"inputSchema": {
"description": "Request for retrieving Kubernetes API resources.",
"properties": {
"parent": {
"description": "Required. The cluster, which owns this collection of resource types. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "list_k8s_api_resources"
},
{
"description": "Retrieves events from a Kubernetes cluster. This is similar to running `kubectl events`.",
"inputSchema": {
"description": "Request message for KubeEvents.",
"properties": {
"allNamespaces": {
"description": "Optional. If true, retrieve events from all namespaces.",
"type": "boolean"
},
"limit": {
"description": "Optional. The maximum number of events to return. If not specified, 500 is used.",
"format": "int64",
"type": "string"
},
"name": {
"description": "Optional. The name of the resource to retrieve events for.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource. If not specified and all_namespaces is false, \"default\" is used.",
"type": "string"
},
"parent": {
"description": "Required. The parent cluster. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"resourceType": {
"description": "Optional. The type of the resource to retrieve events for.",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "list_k8s_events"
},
{
"description": "Lists the node pools for a specific GKE cluster.",
"inputSchema": {
"description": "MCPListNodePoolsRequest lists the node pool(s) for a cluster.",
"properties": {
"parent": {
"description": "Required. The parent (project, location, cluster name) where the node pools will be listed. Specified in the format `projects/*/locations/*/clusters/*`.",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "list_node_pools"
},
{
"description": "Lists GKE operations in a given project and location. Location can be a region, zone, or '-' for all locations.",
"inputSchema": {
"description": "MCPListOperationsRequest lists operations.",
"properties": {
"parent": {
"description": "Required. The parent (project and location) where the operations will be listed. Specified in the format `projects/*/locations/*`. Location \"-\" matches all zones and all regions.",
"type": "string"
}
},
"required": [
"parent"
],
"type": "object"
},
"name": "list_operations"
},
{
"description": "Patches a Kubernetes resource. This is similar to running `kubectl patch`.",
"inputSchema": {
"description": "Request for patching a Kubernetes resource.",
"properties": {
"name": {
"description": "Required. The name of the resource to patch.",
"type": "string"
},
"namespace": {
"description": "Optional. The namespace of the resource. If not specified, \"default\" is used.",
"type": "string"
},
"parent": {
"description": "Required. The cluster to patch the resource in. Format: projects/{project}/locations/{location}/clusters/{cluster}",
"type": "string"
},
"patch": {
"description": "Required. The patch to apply in JSON format.",
"type": "string"
},
"patchType": {
"description": "Optional. The patch strategy to apply. Valid values are \"strategic\", \"merge\", or \"json\". If not specified, \"strategic\" patch type will be used.",
"type": "string"
},
"resourceType": {
"description": "Required. The type of resource to patch. e.g. \"pods\", \"deployments\", \"services\".",
"type": "string"
}
},
"required": [
"parent",
"resourceType",
"name",
"patch"
],
"type": "object"
},
"name": "patch_k8s_resource"
},
{
"description": "Updates a specific GKE cluster.",
"inputSchema": {
"description": "MCPUpdateClusterRequest updates a cluster.",
"properties": {
"name": {
"description": "Required. The name (project, location, cluster) of the cluster to update. Specified in the format `projects/*/locations/*/clusters/*`.",
"type": "string"
},
"update": {
"description": "Required. A description of the update represented as a string using JSON format. The full update request object can be found at https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters/update https://docs.cloud.google.com/kubernetes-engine/docs/reference/rest/v1/ClusterUpdate",
"type": "string"
}
},
"required": [
"name",
"update"
],
"type": "object"
},
"name": "update_cluster"
},
{
"description": "Updates a specific node pool within a GKE cluster.",
"inputSchema": {
"description": "MCPUpdateNodePoolRequest updates a node pool for a cluster.",
"properties": {
"name": {
"description": "Required. The name (project, location, cluster, node pool) of the node pool to update. Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.",
"type": "string"
},
"update": {
"description": "Required. A [node pool update request](https://cloud.google.com/container-engine/reference/rest/v1/projects.locations.clusters.nodePools/update) represented as a string using JSON format.",
"type": "string"
}
},
"required": [
"name",
"update"
],
"type": "object"
},
"name": "update_node_pool"
}
]
}What the leaf hashes
{"body":"9821f9ea1f4ccfe050294c0836b2bec83acf4e990f5ab5cf50243d23fd0b96be","id":523397,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793124342442063,"prev":null,"subject":"c2dacf2e-7df7-4089-b7be-286084499998","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).
- 0x6bf71c014ee9576077b2c8227077fade6fe57437c9c3660ba72c309dd667621e
- 0xc996320875f173b08e3d4aa70b2dd47f4a5624735aa28f72d9acc5307161ac19
- 0x6be4e5f67137498d0d5757ef0140353a3455fdbbc2d4ea4b5122f9bd1bbf6dd8
- 0x4531f79f3c1d452c77819e529940e81dabfb1a8c676689b903e863f4481449d6
- 0x6ccd5c4b51fa5b4f9fde257a1b8f3cbcb2694056a11d02f372ac4b5ed6d284d3
- 0x9208702c15cfc1314f52a6b97295e409b0096454ebdf544de1d95fc8b3d883d2
- 0xe7b3ffddb0bf60ffc91437a3c7fccaa4d66777c4b3ba2b58c0397defd33b8202
- 0xde2bc967198d741b126fdecfdcd2b04d6d5c53d4e794c2775261a44c19bea606
- 0xfb26683b49d3aa782b298e6b51f4d5b1cf3293a903e6c6a1db338b4d20260a43
- 0xd47350fcc360ac37d551feaf6a243adc3bd7a11098b553c5bd80216fcc71b989
- 0x6738484c4b0aa7fb26d54986679f59235c86aa66784f642b6275a0cbd7593ba2
- 0xc78608c08428e27bbac3251f568868a865e1e442ea6f182a8fd2342173a5acaf
- 0xa7e162a9119a39c37b96b3483510d3fd108f25676fe3a9584241629612b01526
- 0xb2ae53d841a55a805fb4078b1a7d44e08a81aba4be3690bac3a5b4c366bf39da
- 0x275720ecabb68df33eee92ae4fd70572a8d952d6c61c061c2869cfc3217aa5c5
- 0x23cf9bb4337ee8be7fcae368fd69d24c62c11fb45882127b4cd919bb96a19996
- 0x0e01aa9525097570a6edaf32bfc959de57bf5c24317cf10c0716affea85ca60d
- 0xa20d48798a34aba12eb9c7297722982d910f06c148f5e27ac59307422964a585
- 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
- Day root
- 0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
- Chained
- 0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
- Published
- On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4