com.googleapis.datastream/mcp
Official10 toolsInteract with your Google Cloud Datastream resources using natural language commands.
Manages Google Cloud Datastream for database replication and data synchronization.
Captured live from the server via tools/list.
get_operation
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.
Parameters (1)
- namestring
The name of the operation resource.
list_connection_profiles
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.
Parameters (6)
- createTimeAfterstring
Optional. 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.
- createTimeBeforestring
Optional. 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.
- displayNamestring
Optional. Use to get connection profiles whose display name contains the provided name.
- pageSizeinteger
Optional. 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.
- pageTokenstring
Optional. 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.
- parentstringrequired
Required. The parent that owns the collection of connection profiles. Must be in the format `projects/*/locations/*`. For example: 'projects/my-project/locations/us-central1'
list_streams
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.
Parameters (8)
- createTimeAfterstring
Optional. 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.
- createTimeBeforestring
Optional. 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.
- displayNamestring
Optional. Use to get streams whose display name contains the provided name.
- failedboolean
Optional. Use to get streams that are currently in state FAILED or FAILED_PERMANENTLY.
- pageSizeinteger
Optional. 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.
- pageTokenstring
Optional. 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.
- parentstringrequired
Required. The parent that owns the collection of streams. Must be in the format `projects/*/locations/*`. For example: 'projects/my-project/locations/us-central1'
- runningboolean
Optional. Use to get streams that are currently in state RUNNING.
get_stream
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'.
Parameters (1)
- namestringrequired
Required. The name of the stream resource to get.
run_stream
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.
Parameters (3)
- cdcStrategyany
Optional. The CDC strategy of the stream. If not set, the system's default value will be used.
- forceboolean
Optional. Update the stream without validating it.
- namestringrequired
Required. Name of the stream resource to start, in the format: projects/{project_id}/locations/{location}/streams/{stream_name}
delete_stream
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.
Parameters (2)
- namestringrequired
Required. The name of the stream resource to delete.
- requestIdstring
Optional. 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).
list_stream_objects
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.
Parameters (3)
- pageSizeinteger
Optional. Maximum number of objects to return. Default is 50. The maximum value is 1000; values above 1000 will be coerced to 1000.
- pageTokenstring
Optional. 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.
- parentstringrequired
Required. The parent stream that owns the collection of objects.
get_stream_object
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'.
Parameters (1)
- namestringrequired
Required. The name of the stream object resource to get.
lookup_stream_object
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'.
Parameters (2)
- parentstringrequired
Required. The parent stream that owns the collection of objects.
- sourceObjectIdentifieranyrequired
Required. The source object identifier which maps to the stream object.
list_static_ips
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'.
Parameters (1)
- namestringrequired
Required. 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'
README not available yet.
Install
claude_desktop_config.json
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://datastream.googleapis.com/mcp"
]
}
}
}Desktop config is stdio-only; this bridges via mcp-remote. Native remote: Settings > Connectors.