Tool: list_snapshots
List all Cloud Pub/Sub snapshots in a given project.
Parameters
project: The ID of the Google Cloud project to list snapshots in, in the formatprojects/{project_id}.
Returns
- A list of snapshots in the specified project.
Important Notes
A snapshot is a named resource that captures the acknowledgment state of messages in an existing subscription to allow for managing acknowledgments in bulk.
A project ID must be provided.
The following sample demonstrate how to use curl to invoke the list_snapshots MCP tool.
| Curl Request |
|---|
curl --location 'https://pubsub.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_snapshots", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Input Schema
Request for the ListSnapshots method.
ListSnapshotsRequest
| JSON representation |
|---|
{ "project": string, "pageSize": integer, "pageToken": string } |
| Fields | |
|---|---|
project |
Required. The name of the project in which to list snapshots. Format is |
pageSize |
Optional. Maximum number of snapshots to return. |
pageToken |
Optional. The value returned by the last |
Output Schema
Response for the ListSnapshots method.
ListSnapshotsResponse
| JSON representation |
|---|
{
"snapshots": [
{
object ( |
| Fields | |
|---|---|
snapshots[] |
Optional. The resulting snapshots. |
nextPageToken |
Optional. If not empty, indicates that there may be more snapshot that match the request; this value should be passed in a new |
Snapshot
| JSON representation |
|---|
{ "name": string, "topic": string, "expireTime": string, "labels": { string: string, ... } } |
| Fields | |
|---|---|
name |
Optional. The name of the snapshot. |
topic |
Optional. The name of the topic from which this snapshot is retaining messages. |
expireTime |
Optional. The snapshot is guaranteed to exist up until this time. A newly-created snapshot expires no later than 7 days from the time of its creation. Its exact lifetime is determined at creation by the existing backlog in the source subscription. Specifically, the lifetime of the snapshot is 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: |
labels |
Optional. See Creating and managing labels. 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 |
|
Tool Annotations
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ✅