Tool: lookup_stream_object
Lookup a stream object by its source object identifier. Parameters:
- The
parentparameter is the name of the stream in the form:projects/{project name}/locations/{location}/streams/{stream name}, for example:projects/my-project/locations/us-central1/streams/my-stream. - The
source_object_identifierparameter is the source database object identifier. Different source databases have different identifier formats. Examples:- Oracle, PostgreSQL, SQL Server and Spanner databases the identifier is
schemaandtable. - MySQL databases the identifier is
databaseandtable.
- Oracle, PostgreSQL, SQL Server and Spanner databases the identifier is
The following sample demonstrate how to use curl to invoke the lookup_stream_object MCP tool.
| Curl Request |
|---|
curl --location 'https://datastream.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "lookup_stream_object", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Input Schema
Request for looking up a specific stream object by its source object identifier.
LookupStreamObjectRequest
| JSON representation |
|---|
{
"parent": string,
"sourceObjectIdentifier": {
object ( |
| Fields | |
|---|---|
parent |
Required. The parent stream that owns the collection of objects. |
sourceObjectIdentifier |
Required. The source object identifier which maps to the stream object. |
SourceObjectIdentifier
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field source_identifier. The identifier for an object in the data source. source_identifier can be only one of the following: |
|
oracleIdentifier |
Oracle data source object identifier. |
mysqlIdentifier |
Mysql data source object identifier. |
postgresqlIdentifier |
PostgreSQL data source object identifier. |
sqlServerIdentifier |
SQLServer data source object identifier. |
salesforceIdentifier |
Salesforce data source object identifier. |
mongodbIdentifier |
MongoDB data source object identifier. |
spannerIdentifier |
Spanner data source object identifier. |
OracleObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Required. The schema name. |
table |
Required. The table name. |
MysqlObjectIdentifier
| JSON representation |
|---|
{ "database": string, "table": string } |
| Fields | |
|---|---|
database |
Required. The database name. |
table |
Required. The table name. |
PostgresqlObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Required. The schema name. |
table |
Required. The table name. |
SqlServerObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Required. The schema name. |
table |
Required. The table name. |
SalesforceObjectIdentifier
| JSON representation |
|---|
{ "objectName": string } |
| Fields | |
|---|---|
objectName |
Required. The object name. |
MongodbObjectIdentifier
| JSON representation |
|---|
{ "database": string, "collection": string } |
| Fields | |
|---|---|
database |
Required. The database name. |
collection |
Required. The collection name. |
SpannerObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Optional. The schema name. |
table |
Required. The table name. |
Output Schema
A specific stream object (e.g a specific DB table).
StreamObject
| JSON representation |
|---|
{ "name": string, "createTime": string, "updateTime": string, "displayName": string, "errors": [ { object ( |
| Fields | |
|---|---|
name |
Output only. Identifier. The object resource's name. |
createTime |
Output only. The creation time of the object. 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 last update time of the object. 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: |
displayName |
Required. Display name. |
errors[] |
Output only. Active errors on the object. |
backfillJob |
The latest backfill job that was initiated for the stream object. |
sourceObject |
The object identifier in the data source. |
customizationRules[] |
Output only. The customization rules for the object. These rules are derived from the parent Stream's |
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. |
Error
| JSON representation |
|---|
{ "reason": string, "errorUuid": string, "message": string, "errorTime": string, "details": { string: string, ... } } |
| Fields | |
|---|---|
reason |
A title that explains the reason for the error. |
errorUuid |
A unique identifier for this specific error, allowing it to be traced throughout the system in logs and API responses. |
message |
A message containing more information about the error that occurred. |
errorTime |
The time when the error occurred. 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: |
details |
Additional information about the error. An object containing a list of |
DetailsEntry
| JSON representation |
|---|
{ "key": string, "value": string } |
| Fields | |
|---|---|
key |
|
value |
|
BackfillJob
| JSON representation |
|---|
{ "state": enum ( |
| Fields | |
|---|---|
state |
Output only. Backfill job state. |
trigger |
Backfill job's triggering reason. |
lastStartTime |
Output only. Backfill job's start time. 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: |
lastEndTime |
Output only. Backfill job's end time. 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: |
errors[] |
Output only. Errors which caused the backfill job to fail. |
SourceObjectIdentifier
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field source_identifier. The identifier for an object in the data source. source_identifier can be only one of the following: |
|
oracleIdentifier |
Oracle data source object identifier. |
mysqlIdentifier |
Mysql data source object identifier. |
postgresqlIdentifier |
PostgreSQL data source object identifier. |
sqlServerIdentifier |
SQLServer data source object identifier. |
salesforceIdentifier |
Salesforce data source object identifier. |
mongodbIdentifier |
MongoDB data source object identifier. |
spannerIdentifier |
Spanner data source object identifier. |
OracleObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Required. The schema name. |
table |
Required. The table name. |
MysqlObjectIdentifier
| JSON representation |
|---|
{ "database": string, "table": string } |
| Fields | |
|---|---|
database |
Required. The database name. |
table |
Required. The table name. |
PostgresqlObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Required. The schema name. |
table |
Required. The table name. |
SqlServerObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Required. The schema name. |
table |
Required. The table name. |
SalesforceObjectIdentifier
| JSON representation |
|---|
{ "objectName": string } |
| Fields | |
|---|---|
objectName |
Required. The object name. |
MongodbObjectIdentifier
| JSON representation |
|---|
{ "database": string, "collection": string } |
| Fields | |
|---|---|
database |
Required. The database name. |
collection |
Required. The collection name. |
SpannerObjectIdentifier
| JSON representation |
|---|
{ "schema": string, "table": string } |
| Fields | |
|---|---|
schema |
Optional. The schema name. |
table |
Required. The table name. |
CustomizationRule
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field rule. The rule to apply. rule can be only one of the following: |
|
bigqueryPartitioning |
BigQuery partitioning rule. |
bigqueryClustering |
BigQuery clustering rule. |
BigQueryPartitioning
| JSON representation |
|---|
{ "requirePartitionFilter": boolean, // Union field |
| Fields | |
|---|---|
requirePartitionFilter |
Optional. If true, queries over the table require a partition filter. |
Union field partitioning. Partitioning to apply on the table. partitioning can be only one of the following: |
|
integerRangePartition |
Integer range partitioning. |
timeUnitPartition |
Time unit column partitioning. |
ingestionTimePartition |
Ingestion time partitioning. |
IntegerRangePartition
| JSON representation |
|---|
{ "column": string, "start": string, "end": string, "interval": string } |
| Fields | |
|---|---|
column |
Required. The partitioning column. |
start |
Required. The starting value for range partitioning (inclusive). |
end |
Required. The ending value for range partitioning (exclusive). |
interval |
Required. The interval of each range within the partition. |
TimeUnitPartition
| JSON representation |
|---|
{
"column": string,
"partitioningTimeGranularity": enum ( |
| Fields | |
|---|---|
column |
Required. The partitioning column. |
partitioningTimeGranularity |
Optional. Partition granularity. |
IngestionTimePartition
| JSON representation |
|---|
{
"partitioningTimeGranularity": enum ( |
| Fields | |
|---|---|
partitioningTimeGranularity |
Optional. Partition granularity |
BigQueryClustering
| JSON representation |
|---|
{ "columns": [ string ] } |
| Fields | |
|---|---|
columns[] |
Required. Column names to set as clustering columns. |
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌