MCP Tools Reference: bigquery.googleapis.com

Tool: list_dataset_ids

List BigQuery dataset IDs and BigLake namespaces in a Google Cloud project. Supports pagination. Use page_size to limit results and page_token to retrieve next page.

The following code sample shows how to use curl to call the list_dataset_ids MCP tool.

Curl Request
curl --location 'https://bigquery.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_dataset_ids",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Input Schema

Request for a list of datasets in a project.

ListDatasetsRequest

JSON representation
{
  "projectId": string,
  "pageSize": integer,
  "pageToken": string
}
Fields
projectId

string

Required. Project ID of the dataset request.

pageSize

integer

Optional. The maximum number of results to return in a single response page. If unset, the default page size of 5000 is used.

pageToken

string

Optional. Page token, returned by a previous call, to request the next page of results.

Output Schema

Response for a list of datasets.

ListDatasetsResponse

JSON representation
{
  "datasets": [
    {
      object (ListFormatDataset)
    }
  ],
  "nextPageToken": string
}
Fields
datasets[]

object (ListFormatDataset)

The datasets that matched the request.

nextPageToken

string

A token that can be used to request the next results page.

ListFormatDataset

JSON representation
{
  "id": string,
  "friendlyName": string,
  "location": string,
  "type": string
}
Fields
id

string

The ID of the dataset.

friendlyName

string

An alternate name for the dataset. The friendly name is purely decorative in nature. This can be useful to derive additional information about the dataset.

location

string

The geographic location where the dataset resides.

type

string

Output only. Same as type. The type of the dataset, one of:

  • DEFAULT - only accessible by owner and authorized accounts,
  • PUBLIC - accessible by everyone,
  • LINKED - linked dataset,
  • EXTERNAL - dataset with definition in external metadata catalog,
  • BIGLAKE_ICEBERG - a Biglake dataset accessible through the Iceberg API,
  • BIGLAKE_HIVE - a Biglake dataset accessible through the Hive API.

StringValue

JSON representation
{
  "value": string
}
Fields
value

string

The string value.

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