MCP Tools Reference: cloudproductregistry.googleapis.com

Tool: lookup_entity_by_name

Looks up a specific entity by its name, providing details about it. This tool supports ProductSuite, LogicalProduct, and LogicalProductVariant lookups and should be invoked when you have the name of an entity and need to retrieve its details without knowing its specific type beforehand. Supported names are in the format of productSuites/{product_suite_id}, logicalProducts/{logical_product_id}, and logicalProducts/{logical_product_id}/variants/{logical_product_variant_id}.

The following sample demonstrate how to use curl to invoke the lookup_entity_by_name MCP tool.

Curl Request
                  
curl --location 'https://cloudproductregistry.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "lookup_entity_by_name",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Input Schema

Request message for LookupEntity.

LookupEntityRequest

JSON representation
{
  "lookupUri": string
}
Fields
lookupUri

string

Required. Entity uri to look up. Supported Formats: logicalProducts/{logical_product} logicalProducts/{logical_product}/variants/{variant} productSuites/{product_suite}

Output Schema

Response message for LookupEntity.

LookupEntityResponse

JSON representation
{

  // Union field entity can be only one of the following:
  "logicalProduct": {
    object (LogicalProduct)
  },
  "logicalProductVariant": {
    object (LogicalProductVariant)
  },
  "productSuite": {
    object (ProductSuite)
  }
  // End of list of possible types for union field entity.
}
Fields
Union field entity. Matched entity. entity can be only one of the following:
logicalProduct

object (LogicalProduct)

Matched LogicalProduct.

logicalProductVariant

object (LogicalProductVariant)

Matched LogicalProductVariant.

productSuite

object (ProductSuite)

Matched ProductSuite.

LogicalProduct

JSON representation
{
  "name": string,
  "title": string,
  "productSuite": string,
  "variants": [
    string
  ],
  "lifecycleState": enum (LifecycleState),
  "replaced": boolean,
  "replacement": string
}
Fields
name

string

Identifier. The resource name of the LogicalProduct. Format: logicalProducts/{logical_product}.

title

string

Display name of the LogicalProduct.

productSuite

string

Product suite associated with the logical product. Format: productSuites/{product_suite}.

variants[]

string

Output only. Child variant resource references. Format: logicalProducts/{logical_product}/variants/{variant}

lifecycleState

enum (LifecycleState)

Output only. Current Lifecycle state of the logical product.

replaced

boolean

Output only. Indicates whether the logical product has been replaced. If false, the product is active. If true, the product has been replaced by another type, and the replacement field contains the resource name of that replacement.

replacement

string

Output only. The resource name of the Logical Entity that the logical product is replaced by. This field is only populated when this logical product is replaced by some other type. Eg: logicalProducts/{logical_product}/variants/{variant}, productSuites/{product_suite}, etc.

LogicalProductVariant

JSON representation
{
  "name": string,
  "title": string,
  "lifecycleState": enum (LifecycleState),
  "replaced": boolean,
  "replacement": string
}
Fields
name

string

Identifier. The resource name of the LogicalProductVariant. Format: logicalProducts/{logical_product}/variants/{variant}

title

string

Display name of the LogicalProductVariant.

lifecycleState

enum (LifecycleState)

Output only. Current Lifecycle state of the logical product variant.

replaced

boolean

Output only. Indicates whether the logical product variant has been replaced. If false, the variant is active. If true, the variant has been replaced by another type, and the replacement field contains the resource name of that replacement.

replacement

string

Output only. The resource name of the Logical Entity that the logical product variant is replaced by. This field is only populated when this logical product variant is replaced by some other type. Eg: logicalProducts/{logical_product}, productSuites/{product_suite}, etc.

ProductSuite

JSON representation
{
  "name": string,
  "title": string,
  "logicalProducts": [
    string
  ],
  "replaced": boolean,
  "replacement": string
}
Fields
name

string

Identifier. The resource name of the ProductSuite. Format: productSuites/{product_suite}

title

string

Title of the ProductSuite.

logicalProducts[]

string

Output only. LogicalProducts under this suite. Format: logicalProducts/{logical_product}

replaced

boolean

Output only. Indicates whether the product suite has been replaced. If false, the product suite is active. If true, the product suite has been replaced by another type, and the replacement field contains the resource name of that replacement.

replacement

string

Output only. The resource name of the Logical Entity that the product suite is replaced by. This field is only populated when this product suite is replaced by some other type. Eg: logicalProducts/{logical_product}, logicalProducts/{logical_product}/variants/{variant}, etc.

Tool Annotations

Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌