Tool: list_runtimes
Lists all Colab runtimes currently assigned to the requesting user.
Each returned runtime includes its specification and the connection info needed to connect to it.
The following code sample shows how to use curl to call the list_runtimes MCP tool.
| Curl Request |
|---|
curl --location 'https://colaboratory.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_runtimes", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Input Schema
Request message for ListRuntimes.
Output Schema
Response message for ListRuntimes.
ListRuntimesResponse
| JSON representation |
|---|
{
"runtimes": [
{
object ( |
| Fields | |
|---|---|
runtimes[] |
The list of runtimes assigned to the requesting user. |
Runtime
| JSON representation |
|---|
{ "name": string, "runtimeSpec": { object ( |
| Fields | |
|---|---|
name |
Identifier. The name of the runtime in the format |
runtimeSpec |
Required. The specification of the runtime. |
connectionInfo |
Output only. The connection info used to authenticate to the runtime. |
version |
Optional. The version of the runtime image. See Colab Runtime Version FAQ for supported runtime versions. If omitted (empty), the latest runtime image is used. |
Key
| JSON representation |
|---|
{ "variant": enum ( |
| Fields | |
|---|---|
variant |
Required. Runtime variant. |
accelerator |
Required. Runtime accelerator model name (e.g., "T4", "L4", "A100"). For CPU runtime specs, this field will be "NONE". |
shape |
Required. Runtime shape. |
ConnectionInfo
| JSON representation |
|---|
{ "token": string, "expireTime": string, "url": string } |
| Fields | |
|---|---|
token |
Required. Output only. The runtime proxy token. This is a short-lived credential used to authenticate to the runtime. Clients should set this token as the value of the |
expireTime |
Required. Output only. The expiration time of the runtime proxy token. 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: |
url |
Required. Output only. The authenticated URL that can be used to connect to the runtime. |
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. |
Variant
Runtime variant.
| Enums | |
|---|---|
VARIANT_UNSPECIFIED |
Default value. This value is unused. |
VARIANT_CPU |
CPU variant. |
VARIANT_GPU |
GPU variant. |
VARIANT_TPU |
TPU variant. |
Shape
Runtime shape.
| Enums | |
|---|---|
SHAPE_UNSPECIFIED |
Default value. This value is unused. |
SHAPE_STANDARD |
Standard shape. |
SHAPE_HIGHMEM |
High memory shape. |
Tool Annotations
Tool annotations are sent to MCP clients to describe the basic risk of a given tool. Most clients treat these hints as untrusted, but they can be used to decide when a confirmation prompt might be sent to a user.
Along with the title string, the following boolean hints are defined as follows:
readOnlyHint: If true, the tool doesn't modify its environment. Default: false.destructiveHint: If true, then the tool can perform destructive actions. If false, then the tool can only perform additive actions. Default: true.idempotentHint: If true, then calling the tool repeatedly with the same arguments will have no additional effect on its environment. Default: false.openWorldHint: If true, then the tool can interact with an 'open world' of external entities. If false, then the tool can only interact with internal entities. For example, a web search tool would be open world, while a memory tool would not be open world.
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌