MCP Tools Reference: colaboratory.googleapis.com

Tool: get_runtime

Retrieves a single Colab runtime assigned to the requesting user by its resource name (runtimes/{runtime_id}), including its specification and the connection info needed to connect to it.

The following code sample shows how to use curl to call the get_runtime 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": "get_runtime",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Input Schema

Request message for GetRuntime.

GetRuntimeRequest

JSON representation
{
  "name": string
}
Fields
name

string

Required. The name of the runtime to retrieve. Format: runtimes/{runtime_id}.

Output Schema

A Colab managed runtime.

This is essentially a Jupyter server that runs on Google infrastructure. Clients should use the connection_info provided to connect to the runtime, and leverage the standard Jupyter REST API and/or client library to interact with the runtime.

Runtime

JSON representation
{
  "name": string,
  "runtimeSpec": {
    object (Key)
  },
  "connectionInfo": {
    object (ConnectionInfo)
  },
  "version": string
}
Fields
name

string

Identifier. The name of the runtime in the format runtimes/{runtime_id}, where runtime_id is either the value supplied via CreateRuntimeRequest.runtime_id or, if none was supplied, a random ID generated by the backend.

runtimeSpec

object (Key)

Required. The specification of the runtime.

connectionInfo

object (ConnectionInfo)

Output only. The connection info used to authenticate to the runtime.

version

string

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 (Variant),
  "accelerator": string,
  "shape": enum (Shape)
}
Fields
variant

enum (Variant)

Required. Runtime variant.

accelerator

string

Required. Runtime accelerator model name (e.g., "T4", "L4", "A100"). For CPU runtime specs, this field will be "NONE".

shape

enum (Shape)

Required. Runtime shape.

ConnectionInfo

JSON representation
{
  "token": string,
  "expireTime": string,
  "url": string
}
Fields
token

string

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 X-Colab-Runtime-Proxy-Token HTTP header when connecting to the runtime, and call the GetRuntime API to refresh this token when approaching expire_time.

expireTime

string (Timestamp format)

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

url

string

Required. Output only. The authenticated URL that can be used to connect to the runtime.

Timestamp

JSON representation
{
  "seconds": string,
  "nanos": integer
}
Fields
seconds

string (int64 format)

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

integer

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: ❌