Tool: get_data_product
Fetches details of a single, specified Data Product. Once you have used the get_data_product tool to fetch the metadata for a Data Product, you can use the list_data_assets tool to list the Data Assets that are part of that Data Product.
The following sample demonstrate how to use curl
to invoke the get_data_product
MCP tool.
| Curl Request |
|---|
curl --location 'https://dataplex.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "get_data_product", "arguments": { // provide these details according to the tool' s MCP specification } } , "jsonrpc" : "2.0" , "id" : 1 } ' |
Input Schema
Request message for getting a data product.
GetDataProductRequest
| JSON representation |
|---|
{ "name" : string } |
| Fields | |
|---|---|
name
|
Required. The name of the data product to retrieve. Format: projects/{project_id_or_number}/locations/{location_id}/dataProducts/{data_product_id} |
Output Schema
A data product is a curated collection of data assets, packaged to address specific use cases. It's a way to manage and share data in a more organized, product-like manner.
DataProduct
| JSON representation |
|---|
{
"name"
:
string
,
"uid"
:
string
,
"displayName"
:
string
,
"createTime"
:
string
,
"updateTime"
:
string
,
"etag"
:
string
,
"labels"
:
{
string
:
string
,
...
}
,
"description"
:
string
,
"icon"
:
string
,
"ownerEmails"
:
[
string
]
,
"assetCount"
:
integer
,
"accessGroups"
:
{
string
:
{
object (
|
| Fields | |
|---|---|
name
|
Identifier. Resource name of the data product. Format: |
uid
|
Output only. System generated unique ID for the data product. This ID will be different if the data product is deleted and re-created with the same name. |
displayName
|
Required. User-friendly display name of the data product. |
createTime
|
Output only. The time at which the data product was created. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
updateTime
|
Output only. The time at which the data product was last updated. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: |
etag
|
Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. |
labels
|
Optional. User-defined labels for the data product. Example: An object containing a list of |
description
|
Optional. Description of the data product. |
icon
|
Optional. Base64 encoded image representing the data product. Max Size: 3.0MiB Expected image dimensions are 512x512 pixels, however the API only performs validation on size of the encoded data. Note: For byte fields, the content of the fields are base64-encoded (which increases the size of the data by 33-36%) when using JSON on the wire. A base64-encoded string. |
ownerEmails[]
|
Required. Emails of the data product owners. |
assetCount
|
Output only. Number of data assets associated with this data product. |
accessGroups
|
Optional. Data product access groups by access group id as key. If data product is used only for packaging data assets, then access groups may be empty. However, if a data product is used for sharing data assets, then at least one access group must be specified. Example: An object containing a list of |
Timestamp
| JSON representation |
|---|
{ "seconds" : string , "nanos" : integer } |
| Fields | |
|---|---|
seconds
|
Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be between -62135596800 and 253402300799 inclusive (which corresponds to 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z). |
nanos
|
Non-negative fractions of a second at nanosecond resolution. This field is the nanosecond portion of the duration, not an alternative to seconds. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be between 0 and 999,999,999 inclusive. |
LabelsEntry
| JSON representation |
|---|
{ "key" : string , "value" : string } |
| Fields | |
|---|---|
key
|
|
value
|
|
AccessGroupsEntry
| JSON representation |
|---|
{
"key"
:
string
,
"value"
:
{
object (
|
| Fields | |
|---|---|
key
|
|
value
|
|
AccessGroup
| JSON representation |
|---|
{
"id"
:
string
,
"displayName"
:
string
,
"description"
:
string
,
"principal"
:
{
object (
|
| Fields | |
|---|---|
id
|
Required. Unique identifier of the access group within the data product. User defined. Eg. "analyst", "developer", etc. |
displayName
|
Required. User friendly display name of the access group. Eg. "Analyst", "Developer", etc. |
description
|
Optional. Description of the access group. |
principal
|
Required. The principal entity associated with this access group. |
Principal
| JSON representation |
|---|
{ // Union field |
type
. The type of the principal entity. type
can be only one of the following:googleGroup
string
Optional. Email of the Google Group, as per https://cloud.google.com/iam/docs/principals-overview#google-group .
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌

