Skip to main content
Glama

Server Details

Interact with your Google Cloud Datastream resources using natural language commands.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 10 of 10 tools scored. Lowest: 3.5/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct resource-action pair. The three stream-related tools (list_stream_objects, get_stream_object, lookup_stream_object) have clearly different purposes—listing, getting by name, and looking up by source identifier—so no confusion.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with underscores, e.g., delete_stream, list_streams, get_operation. No mixing of conventions or irregular verbs.

Tool Count5/5

With 10 tools, the set is well-scoped for a streaming service management API. It covers essential operations without being bloated or too sparse.

Completeness2/5

The tool set lacks fundamental CRUD operations: there is no create_stream, update_stream, or create/update/delete for stream objects, connection profiles, or static IPs. Agents cannot set up resources from scratch.

Available Tools

10 tools
delete_stream
Destructive
Inspect

Deletes a stream, specified by the provided resource 'name' parameter.

  • The resource 'name' parameter is in the form: 'projects/{project name}/locations/{location}/streams/{stream name}', for example: 'projects/my-project/locations/us-central1/streams/my-streams'.

  • This tool returns a long-running operation. Use the 'get_operation' tool with the returned operation name to poll its status until it completes. Operation may take several minutes; do not check more often than every ten seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRequired. The name of the stream resource to delete.
requestIdNoOptional. A request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Output Schema

ParametersJSON Schema
NameRequiredDescription
doneNoIf the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
nameNoThe server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
errorNoThe error result of the operation in case of failure or cancellation.
metadataNoService-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
responseNoThe normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
get_operation
Read-onlyIdempotent
Inspect

Gets the status of a long-running operation.

Usage Some tools (for example, run_stream) return a long-running operation. You can use this tool to get the status of the operation. It can be called repeatedly until the operation is complete.

Parameters

  • name: The name of the operation to get.

    • name should be the name returned by the tool that initiated the operation.

    • name should be in the format of: projects/{project}/locations/{location}/operations/{operation}.

Returns

  • An Operation object that contains the status of the operation.

  • If the operation is not complete, the response will be empty. Do not check more than every ten seconds.

  • If the operation is complete, the response will contain either:

    • A response field that contains the result of the operation and indicates that it was successful.

    • A error field that indicates any errors that occurred during the operation.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoThe name of the operation resource.

Output Schema

ParametersJSON Schema
NameRequiredDescription
doneNoIf the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
nameNoThe server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
errorNoThe error result of the operation in case of failure or cancellation.
metadataNoService-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
responseNoThe normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
get_stream
Read-onlyIdempotent
Inspect

Get details of the stream specified by the provided resource 'name' parameter.

  • The resource 'name' parameter is in the form: 'projects/{project name}/locations/{location}/streams/{stream name}', for example: 'projects/my-project/locations/us-central1/streams/my-streams'.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRequired. The name of the stream resource to get.

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNoOutput only. Identifier. The stream's name.
stateNoThe state of the stream.
errorsNoOutput only. Errors on the Stream.
labelsNoLabels.
ruleSetsNoOptional. Rule sets to apply to the stream.
createTimeNoOutput only. The creation time of the stream.
updateTimeNoOutput only. The last update time of the stream.
backfillAllNoAutomatically backfill objects included in the stream source configuration. Specific objects can be excluded.
displayNameNoRequired. Display name.
backfillNoneNoDo not automatically backfill any objects.
satisfiesPziNoOutput only. Reserved for future use.
satisfiesPzsNoOutput only. Reserved for future use.
sourceConfigNoRequired. Source connection profile configuration.
lastRecoveryTimeNoOutput only. If the stream was recovered, the time of the last recovery. Note: This field is currently experimental.
destinationConfigNoRequired. Destination connection profile configuration.
customerManagedEncryptionKeyNoImmutable. A reference to a KMS encryption key. If provided, it will be used to encrypt the data. If left blank, data will be encrypted using an internal Stream-specific encryption key provisioned through KMS.
get_stream_object
Read-onlyIdempotent
Inspect

Get details of the stream object specified by the provided resource 'name' parameter.

  • The resource 'name' parameter is in the form: 'projects/{project name}/locations/{location}/streams/{stream name}/objects/{stream object name}', for example: 'projects/my-project/locations/us-central1/streams/my-stream/objects/my-stream-object'.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRequired. The name of the stream object resource to get.

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNoOutput only. Identifier. The object resource's name.
errorsNoOutput only. Active errors on the object.
createTimeNoOutput only. The creation time of the object.
updateTimeNoOutput only. The last update time of the object.
backfillJobNoThe latest backfill job that was initiated for the stream object.
displayNameNoRequired. Display name.
sourceObjectNoThe object identifier in the data source.
customizationRulesNoOutput only. The customization rules for the object. These rules are derived from the parent Stream's `rule_sets` and represent the intended configuration for the object.
list_connection_profiles
Read-onlyIdempotent
Inspect

Lists connection profiles in a given project and location.

For example: { parent: "projects/my-project/locations/us-central1" create_time_after: 2025-10-02T10:15:33Z create_time_before: 2025-10-03T00:00:00Z display_name: bookstore page_size: 100 } will return up to 100 connection profiles in projects/my-project/locations/us-central1 that were created on or after 2025-10-02T10:15:33 UTC and before 2025-10-03T00:00:00 UTC, and have "bookstore" in their display name.

ParametersJSON Schema
NameRequiredDescriptionDefault
parentYesRequired. The parent that owns the collection of connection profiles. Must be in the format `projects/*/locations/*`. For example: 'projects/my-project/locations/us-central1'
pageSizeNoOptional. Use to limit the number of connection profiles returned. Valid values are between 1 and 1000 inclusive. Defaults to 1000 if not provided or outside of the valid range. Note that due to filtering, it is possible to get no results (but a next_page_token) so you should keep calling this method until you get a response with an empty next_page_token.
pageTokenNoOptional. A page token, received from a previous `list_connection_profiles` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `list_connection_profiles` must match the call that provided the page token.
displayNameNoOptional. Use to get connection profiles whose display name contains the provided name.
createTimeAfterNoOptional. Use to get connection profiles that were created on or after the provided date/time, formatted as RFC-3339. Common Examples: 2023-09-24T15:30:00Z or 2023-09-24T15:30:00.000+09:00.
createTimeBeforeNoOptional. Use to get connection profiles that were created before the provided date/time, formatted as RFC-3339. Common Examples: 2023-09-24T15:30:00Z or 2023-09-24T15:30:00.000+09:00.

Output Schema

ParametersJSON Schema
NameRequiredDescription
unreachableNoLocations that could not be reached.
nextPageTokenNoA token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
connectionProfilesNoList of connection profiles.
list_static_ips
Read-onlyIdempotent
Inspect

Lists static IP addresses of the provided resource name that need to be allowlisted by the customer when using the static-IP connectivity method. Returns up to 100 IP addresses.

  • The resource 'name' parameter is in the form 'projects/{project name}/locations/{location}', for example: 'projects/my-project/locations/us-central1'.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRequired. The resource name for the location for which static IPs should be returned. Must be in the format `projects/*/locations/*`. For example: 'projects/my-project/locations/us-central1'

Output Schema

ParametersJSON Schema
NameRequiredDescription
staticIpsNolist of static ips by account
nextPageTokenNoA token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
list_stream_objects
Read-onlyIdempotent
Inspect

Lists stream objects in a given stream.

  • Parent parameter is in the form 'projects/{project name}/locations/{location}/streams/{stream name}', for example: 'projects/my-project/locations/us-central1/streams/my-stream'.

  • Not all the details of the stream objects are returned.

  • To get the full details of a specific stream object, use the 'get_stream_object' tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
parentYesRequired. The parent stream that owns the collection of objects.
pageSizeNoOptional. Maximum number of objects to return. Default is 50. The maximum value is 1000; values above 1000 will be coerced to 1000.
pageTokenNoOptional. Page token received from a previous `ListStreamObjectsRequest` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListStreamObjectsRequest` must match the call that provided the page token.

Output Schema

ParametersJSON Schema
NameRequiredDescription
nextPageTokenNoA token, which can be sent as `page_token` to retrieve the next page.
streamObjectsNoList of stream objects.
list_streams
Read-onlyIdempotent
Inspect

Lists streams in a given project and location.

For example: { parent: "projects/my-project/locations/us-central1" create_time_after: 2025-10-02T10:15:33Z create_time_before: 2025-10-03T00:00:00Z display_name: bookstore page_size: 100 running: true } will return up to 100 running streams in projects/my-project/locations/us-central1 that were created on or after 2025-10-02T10:15:33 UTC and before 2025-10-03T00:00:00 UTC, and have "bookstore" in their display name.

ParametersJSON Schema
NameRequiredDescriptionDefault
failedNoOptional. Use to get streams that are currently in state FAILED or FAILED_PERMANENTLY.
parentYesRequired. The parent that owns the collection of streams. Must be in the format `projects/*/locations/*`. For example: 'projects/my-project/locations/us-central1'
runningNoOptional. Use to get streams that are currently in state RUNNING.
pageSizeNoOptional. Use to limit the number of streams returned. Valid values are between 1 and 1000 inclusive. Defaults to 1000 if not provided or outside of the valid range. Note that due to filtering, it is possible to get no results (but a next_page_token) so you should keep calling this method until you get a response with an empty next_page_token.
pageTokenNoOptional. A page token, received from a previous `list_streams` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `list_streams` must match the call that provided the page token.
displayNameNoOptional. Use to get streams whose display name contains the provided name.
createTimeAfterNoOptional. Use to get streams that were created on or after the provided date/time, formatted as RFC-3339. Common Examples: 2023-09-24T15:30:00Z or 2023-09-24T15:30:00.000+09:00.
createTimeBeforeNoOptional. Use to get streams that were created before the provided date/time, formatted as RFC-3339. Common Examples: 2023-09-24T15:30:00Z or 2023-09-24T15:30:00.000+09:00.

Output Schema

ParametersJSON Schema
NameRequiredDescription
streamsNoList of streams
unreachableNoLocations that could not be reached.
nextPageTokenNoA token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
lookup_stream_object
Read-onlyIdempotent
Inspect

Lookup a stream object by its source object identifier. Parameters:

  • The 'parent' parameter 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_identifier' parameter is the source database object identifier. Different source databases have different identifier formats. Examples:

    • Oracle, PostgreSQL, SQL Server and Spanner databases the identifier is 'schema' and 'table'.

    • MySQL databases the identifier is 'database' and 'table'.

ParametersJSON Schema
NameRequiredDescriptionDefault
parentYesRequired. The parent stream that owns the collection of objects.
sourceObjectIdentifierYesRequired. The source object identifier which maps to the stream object.

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNoOutput only. Identifier. The object resource's name.
errorsNoOutput only. Active errors on the object.
createTimeNoOutput only. The creation time of the object.
updateTimeNoOutput only. The last update time of the object.
backfillJobNoThe latest backfill job that was initiated for the stream object.
displayNameNoRequired. Display name.
sourceObjectNoThe object identifier in the data source.
customizationRulesNoOutput only. The customization rules for the object. These rules are derived from the parent Stream's `rule_sets` and represent the intended configuration for the object.
run_streamInspect

Starts an already created stream, specified by the provided resource 'name' parameter.

Parameters

  • 'name': The resource name of the stream to start.

    • 'name' should be in the format of: 'projects/{project name}/locations/{location}/streams/{stream name}', for example: 'projects/my-project/locations/us-central1/streams/my-streams'.

  • 'force': Whether to run the stream without running prior configuration verification. The default is 'false'.

Returns

  • This tool returns a long-running operation. Use the 'get_operation' tool with the returned operation name to poll its status until it completes. Operation may take several minutes; do not check more often than every ten seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRequired. Name of the stream resource to start, in the format: projects/{project_id}/locations/{location}/streams/{stream_name}
forceNoOptional. Update the stream without validating it.
cdcStrategyNoOptional. The CDC strategy of the stream. If not set, the system's default value will be used.

Output Schema

ParametersJSON Schema
NameRequiredDescription
doneNoIf the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
nameNoThe server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
errorNoThe error result of the operation in case of failure or cancellation.
metadataNoService-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
responseNoThe normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources