---
title: "Google BigQuery MCP server for AI agents - actionlake"
description: "Give Claude 134 Google BigQuery actions through one MCP server: transfer configs. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/google-bigquery
updated: 2026-10-22
---

Connectors · Observability & analytics

# Google BigQuery MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Google BigQuery and the rest of your systems. It gives your agent 134 Google BigQuery actions (66 reads, 44 writes and 24 that wait for a confirmation) and holds the Google BigQuery credential itself, so the agent never does. It paces Google BigQuery's limits and records every call. Connecting Google BigQuery needs your own Google BigQuery OAuth app and one admin sign-in.

[Connect Google BigQuery free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "google_bigquery.projects.list",
  intent: "check which Google BigQuery account is connected"
}
# Projects: list · read · 1 upstream call
```

- 134 actions in one signed file
- 66 read look, never change
- 44 write create and update
- 24 wait for a yes destructive, confirmed first

Set up

## Connect Google BigQuery in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect Google BigQuery.
   OAuth 2.0, authorization code with PKCE. You register your own OAuth app with Google BigQuery, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on. actionlake stores what you paste write-only, sealed under your tenant's key.
   Before the first sign-in, Google BigQuery needs an OAuth app of your own, registered in its developer portal. actionlake has no Google BigQuery app to lend you.
   - `access_token` Access token from one sign-in with your own OAuth app
   - `refresh_token` Refresh token from the same sign-in; the access token is renewed from it
   - `client_id` Google OAuth client id (Google Cloud console > APIs & Services > Credentials; enable the BigQuery API, and the Data…
   - `client_secret` Google OAuth client secret
   ```
   account { op: "connections.requirements", service: "google_bigquery" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "google_bigquery.projects.list" }
   # projects: list · read · 1 upstream call
   check { action: "google_bigquery.datasets.insert", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Google BigQuery at a glance

**Sign-in**

OAuth 2.0, authorization code with PKCE. You register your own OAuth app with Google BigQuery, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on.

**You provide**

`access_token` `refresh_token` `client_id` `client_secret`

**Limits we pace to**

100 calls a second, per connection

**API covered**

BigQuery API v2 (Discovery revision 20260922); BigQuery Data Transfer API v1 (Discovery revision 20261017); BigQuery Reservation API v1 (Discovery revision 20261017); BigQuery Connection API v1 (Discovery revision 20260922); BigQuery Data Policy API v1 (Discovery revision 20261014)`bigquery.googleapis.com`

**Built from**

Google BigQuery's documentation, read 22 October 2026[googleapis.com](https://www.googleapis.com/discovery/v1/apis/bigquery/v2/rest) [googleapis.com](https://www.googleapis.com/discovery/v1/apis/bigquerydatatransfer/v1/rest) [googleapis.com](https://www.googleapis.com/discovery/v1/apis/bigqueryreservation/v1/rest)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

65 of 66 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

2, so ask can line Google BigQuery up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Google BigQuery.

134 actions in 21 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **66** read look, never change
- **44** write create and update
- **24** destructive wait for a confirmation

1. ### Transfer configs
   14
   4 read · 2 write · 8 destructive
   Transfer configs: create · Transfer configs: create in location · Transfer configs: list · Transfer configs: list in location
2. ### Assignments
   10
   5 read · 4 write · 1 destructive
   Assignments: create · Assignments: list · Assignments: search · Assignments: search all
3. ### Data policies
   9
   4 read · 4 write · 1 destructive
   Data policies: create · Data policies: list · Data policies: test iam permissions · Data policies: get
4. ### Data sources
   9
   6 read · 3 write · 0 destructive
   Data sources: check valid creds · Data sources: check valid creds in location · Data sources: list · Data sources: list in location
5. ### Reservations
   9
   4 read · 4 write · 1 destructive
   Reservations: create · Reservations: list · Reservations: test iam permissions · Reservations: failover reservation
6. ### Tables
   9
   4 read · 4 write · 1 destructive
   Tables: list · Tables: insert · Tables: get · Tables: patch
7. ### Connections
   8
   4 read · 3 write · 1 destructive
   Connections: create · Connections: list · Connections: test iam permissions · Connections: get
8. ### Routines
   8
   4 read · 3 write · 1 destructive
   Routines: insert · Routines: list · Routines: test iam permissions · Routines: get

**13 more areas · 58 actions**

- Row access policies **8**
- Capacity commitments **7**
- Datasets **7**
- Jobs **7**
- Transfer runs **6**
- Reservation groups **5**
- Models **4**
- Transfer resources **4**
- Bi reservation **2**
- Projects **2**
- Tabledata **2**
- Transfer locations **2**
- Transfer logs **2**

Top actions

## The Google BigQuery API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 15 of Google BigQuery's 15 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `google_bigquery.datasets.list` Datasets: list | Lists all datasets in the specified project to which the user has been granted the READER dataset role. | read | `analytics.dataset.list` 28 connectors |
| `google_bigquery.tables.list` Tables: list | Lists all tables in the specified dataset. | read | `content.table.list` 21 connectors |
| `google_bigquery.datasets.insert` Datasets: insert | Creates a new empty dataset. | write | `analytics.dataset.create` 21 connectors |
| `google_bigquery.datasets.delete` Datasets: delete | Deletes the dataset specified by the datasetId value. | destructive | `analytics.dataset.delete` 23 connectors |
| `google_bigquery.tables.insert` Tables: insert | Creates a new, empty table in the dataset. | write | `content.table.create` 16 connectors |
| `google_bigquery.jobs.get_query_results` Jobs: get query results | RPC to get the results of a query job. | read | `analytics.query_result.get` 6 connectors |
| `google_bigquery.jobs.list` Jobs: list | Lists all jobs that you started in the specified project. | read | `infra.job.list` 12 connectors |
| `google_bigquery.jobs.insert` Jobs: insert | Starts a new asynchronous job. | write | `infra.job.create` 10 connectors |
| `google_bigquery.projects.get_service_account` Projects: get service account | RPC to get the service account for a project used for interactions with Google Cloud KMS. | read | `infra.service_account.get` 4 connectors |
| `google_bigquery.jobs.query` Jobs: query | Runs a BigQuery SQL query synchronously and returns query results if the query completes within a specified timeout. | write | this connector |
| `google_bigquery.models.list` Models: list | Lists all models in the specified dataset. | read | this connector |
| `google_bigquery.projects.list` Projects: list | RPC to list projects to which the user has been granted any project role. | read | this connector |

Try it

## Prompts to paste into Claude.

Each one names the Google BigQuery actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Projects: list in Google BigQuery and tell me what stands out.
   calls `google_bigquery.projects.list`
2. Write write
   Datasets: insert in Google BigQuery. Show me exactly what you will send before you save it.
   calls `google_bigquery.datasets.insert`

Governance for Google BigQuery

## Destructive actions wait for a yes.

24 Google BigQuery actions are destructive. These are all of them:

- Datasets: delete `google_bigquery.datasets.delete`
- Tables: delete `google_bigquery.tables.delete`
- Jobs: delete `google_bigquery.jobs.delete`
- Models: delete `google_bigquery.models.delete`
- Routines: delete `google_bigquery.routines.delete`
- Jobs: cancel `google_bigquery.jobs.cancel`
- Transfer configs: create `google_bigquery.transfer_configs.create`
- Transfer configs: schedule runs `google_bigquery.transfer_configs.schedule_runs`
- Transfer configs: start manual runs `google_bigquery.transfer_configs.start_manual_runs`
- Transfer configs: create in location `google_bigquery.transfer_configs.create_in_location`
- Transfer configs: schedule runs in location `google_bigquery.transfer_configs.schedule_runs_in_location`
- Transfer configs: start manual runs in location `google_bigquery.transfer_configs.start_manual_runs_in_location`
- Assignments: delete `google_bigquery.assignments.delete`
- Connections: delete `google_bigquery.connections.delete`
- Reservations: delete `google_bigquery.reservations.delete`
- Data policies: delete `google_bigquery.data_policies.delete`
- Transfer runs: delete `google_bigquery.transfer_runs.delete`
- Transfer configs: delete `google_bigquery.transfer_configs.delete`
- Reservation groups: delete `google_bigquery.reservation_groups.delete`
- Row access policies: delete `google_bigquery.row_access_policies.delete`
- Capacity commitments: delete `google_bigquery.capacity_commitments.delete`
- Row access policies: batch delete `google_bigquery.row_access_policies.batch_delete`
- Transfer runs: delete in location `google_bigquery.transfer_runs.delete_in_location`
- Transfer configs: delete in location `google_bigquery.transfer_configs.delete_in_location`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do google_bigquery.datasets.delete confirm_policy: **human**

Datasets: delete?

**intent:** the user asked me to datasets: delete

run suspended · waiting for a named person · key _google-bigquery-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "google-bigquery-agent",
  allowed_actions: ["google_bigquery.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "google_bigquery.datasets.delete", approver: "lead@example.com" },
    { match: "google_bigquery.tables.delete", approver: "lead@example.com" },
    { match: "google_bigquery.jobs.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Google BigQuery only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Google BigQuery costs on actionlake.

Every Google BigQuery action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Google BigQuery refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 134 Google BigQuery actions
- 28 actions page each page of a long list is one call
- 65 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Google BigQuery action.

134 actions by area: the id your agent calls, what it does, and its effect.

**Transfer configs 14**

- `google_bigquery.transfer_configs.create` Transfer configs: create destructive
- `google_bigquery.transfer_configs.create_in_location` Transfer configs: create in location destructive
- `google_bigquery.transfer_configs.delete` Transfer configs: delete destructive
- `google_bigquery.transfer_configs.delete_in_location` Transfer configs: delete in location destructive
- `google_bigquery.transfer_configs.get` Transfer configs: get read
- `google_bigquery.transfer_configs.get_in_location` Transfer configs: get in location read
- `google_bigquery.transfer_configs.list` Transfer configs: list read
- `google_bigquery.transfer_configs.list_in_location` Transfer configs: list in location read
- `google_bigquery.transfer_configs.patch` Transfer configs: patch write
- `google_bigquery.transfer_configs.patch_in_location` Transfer configs: patch in location write
- `google_bigquery.transfer_configs.schedule_runs` Transfer configs: schedule runs destructive
- `google_bigquery.transfer_configs.schedule_runs_in_location` Transfer configs: schedule runs in location destructive
- `google_bigquery.transfer_configs.start_manual_runs` Transfer configs: start manual runs destructive
- `google_bigquery.transfer_configs.start_manual_runs_in_location` Transfer configs: start manual runs in location destructive

**Assignments 10**

- `google_bigquery.assignments.create` Assignments: create write
- `google_bigquery.assignments.delete` Assignments: delete destructive
- `google_bigquery.assignments.get_iam_policy` Assignments: get iam policy read
- `google_bigquery.assignments.list` Assignments: list read
- `google_bigquery.assignments.move` Assignments: move write
- `google_bigquery.assignments.patch` Assignments: patch write
- `google_bigquery.assignments.search` Assignments: search read
- `google_bigquery.assignments.search_all` Assignments: search all read
- `google_bigquery.assignments.set_iam_policy` Assignments: set iam policy write
- `google_bigquery.assignments.test_iam_permissions` Assignments: test iam permissions read

**Data policies 9**

- `google_bigquery.data_policies.create` Data policies: create write
- `google_bigquery.data_policies.delete` Data policies: delete destructive
- `google_bigquery.data_policies.get` Data policies: get read
- `google_bigquery.data_policies.get_iam_policy` Data policies: get iam policy read
- `google_bigquery.data_policies.list` Data policies: list read
- `google_bigquery.data_policies.patch` Data policies: patch write
- `google_bigquery.data_policies.rename` Data policies: rename write
- `google_bigquery.data_policies.set_iam_policy` Data policies: set iam policy write
- `google_bigquery.data_policies.test_iam_permissions` Data policies: test iam permissions read

**Data sources 9**

- `google_bigquery.data_sources.check_valid_creds` Data sources: check valid creds read
- `google_bigquery.data_sources.check_valid_creds_in_location` Data sources: check valid creds in location read
- `google_bigquery.data_sources.enroll` Data sources: enroll write
- `google_bigquery.data_sources.enroll_in_location` Data sources: enroll in location write
- `google_bigquery.data_sources.get` Data sources: get read
- `google_bigquery.data_sources.get_in_location` Data sources: get in location read
- `google_bigquery.data_sources.list` Data sources: list read
- `google_bigquery.data_sources.list_in_location` Data sources: list in location read
- `google_bigquery.data_sources.unenroll_in_location` Data sources: unenroll in location write

**Reservations 9**

- `google_bigquery.reservations.create` Reservations: create write
- `google_bigquery.reservations.delete` Reservations: delete destructive
- `google_bigquery.reservations.failover_reservation` Reservations: failover reservation write
- `google_bigquery.reservations.get` Reservations: get read
- `google_bigquery.reservations.get_iam_policy` Reservations: get iam policy read
- `google_bigquery.reservations.list` Reservations: list read
- `google_bigquery.reservations.patch` Reservations: patch write
- `google_bigquery.reservations.set_iam_policy` Reservations: set iam policy write
- `google_bigquery.reservations.test_iam_permissions` Reservations: test iam permissions read

**Tables 9**

- `google_bigquery.tables.delete` Tables: delete destructive
- `google_bigquery.tables.get` Tables: get read
- `google_bigquery.tables.get_iam_policy` Tables: get iam policy read
- `google_bigquery.tables.insert` Tables: insert write
- `google_bigquery.tables.list` Tables: list read
- `google_bigquery.tables.patch` Tables: patch write
- `google_bigquery.tables.set_iam_policy` Tables: set iam policy write
- `google_bigquery.tables.test_iam_permissions` Tables: test iam permissions read
- `google_bigquery.tables.update` Tables: update write

**Connections 8**

- `google_bigquery.connections.create` Connections: create write
- `google_bigquery.connections.delete` Connections: delete destructive
- `google_bigquery.connections.get` Connections: get read
- `google_bigquery.connections.get_iam_policy` Connections: get iam policy read
- `google_bigquery.connections.list` Connections: list read
- `google_bigquery.connections.patch` Connections: patch write
- `google_bigquery.connections.set_iam_policy` Connections: set iam policy write
- `google_bigquery.connections.test_iam_permissions` Connections: test iam permissions read

**Routines 8**

- `google_bigquery.routines.delete` Routines: delete destructive
- `google_bigquery.routines.get` Routines: get read
- `google_bigquery.routines.get_iam_policy` Routines: get iam policy read
- `google_bigquery.routines.insert` Routines: insert write
- `google_bigquery.routines.list` Routines: list read
- `google_bigquery.routines.set_iam_policy` Routines: set iam policy write
- `google_bigquery.routines.test_iam_permissions` Routines: test iam permissions read
- `google_bigquery.routines.update` Routines: update write

**Row access policies 8**

- `google_bigquery.row_access_policies.batch_delete` Row access policies: batch delete destructive
- `google_bigquery.row_access_policies.delete` Row access policies: delete destructive
- `google_bigquery.row_access_policies.get` Row access policies: get read
- `google_bigquery.row_access_policies.get_iam_policy` Row access policies: get iam policy read
- `google_bigquery.row_access_policies.insert` Row access policies: insert write
- `google_bigquery.row_access_policies.list` Row access policies: list read
- `google_bigquery.row_access_policies.test_iam_permissions` Row access policies: test iam permissions read
- `google_bigquery.row_access_policies.update` Row access policies: update write

**Capacity commitments 7**

- `google_bigquery.capacity_commitments.create` Capacity commitments: create write
- `google_bigquery.capacity_commitments.delete` Capacity commitments: delete destructive
- `google_bigquery.capacity_commitments.get` Capacity commitments: get read
- `google_bigquery.capacity_commitments.list` Capacity commitments: list read
- `google_bigquery.capacity_commitments.merge` Capacity commitments: merge write
- `google_bigquery.capacity_commitments.patch` Capacity commitments: patch write
- `google_bigquery.capacity_commitments.split` Capacity commitments: split write

**Datasets 7**

- `google_bigquery.datasets.delete` Datasets: delete destructive
- `google_bigquery.datasets.get` Datasets: get read
- `google_bigquery.datasets.insert` Datasets: insert write
- `google_bigquery.datasets.list` Datasets: list read
- `google_bigquery.datasets.patch` Datasets: patch write
- `google_bigquery.datasets.undelete` Datasets: undelete write
- `google_bigquery.datasets.update` Datasets: update write

**Jobs 7**

- `google_bigquery.jobs.cancel` Jobs: cancel destructive
- `google_bigquery.jobs.delete` Jobs: delete destructive
- `google_bigquery.jobs.get` Jobs: get read
- `google_bigquery.jobs.get_query_results` Jobs: get query results read
- `google_bigquery.jobs.insert` Jobs: insert write
- `google_bigquery.jobs.list` Jobs: list read
- `google_bigquery.jobs.query` Jobs: query write

**Transfer runs 6**

- `google_bigquery.transfer_runs.delete` Transfer runs: delete destructive
- `google_bigquery.transfer_runs.delete_in_location` Transfer runs: delete in location destructive
- `google_bigquery.transfer_runs.get` Transfer runs: get read
- `google_bigquery.transfer_runs.get_in_location` Transfer runs: get in location read
- `google_bigquery.transfer_runs.list` Transfer runs: list read
- `google_bigquery.transfer_runs.list_in_location` Transfer runs: list in location read

**Reservation groups 5**

- `google_bigquery.reservation_groups.create` Reservation groups: create write
- `google_bigquery.reservation_groups.delete` Reservation groups: delete destructive
- `google_bigquery.reservation_groups.get` Reservation groups: get read
- `google_bigquery.reservation_groups.list` Reservation groups: list read
- `google_bigquery.reservation_groups.patch` Reservation groups: patch write

**Models 4**

- `google_bigquery.models.delete` Models: delete destructive
- `google_bigquery.models.get` Models: get read
- `google_bigquery.models.list` Models: list read
- `google_bigquery.models.patch` Models: patch write

**Transfer resources 4**

- `google_bigquery.transfer_resources.get` Transfer resources: get read
- `google_bigquery.transfer_resources.get_in_location` Transfer resources: get in location read
- `google_bigquery.transfer_resources.list` Transfer resources: list read
- `google_bigquery.transfer_resources.list_in_location` Transfer resources: list in location read

**Bi reservation 2**

- `google_bigquery.bi_reservation.get` Bi reservation: get read
- `google_bigquery.bi_reservation.update` Bi reservation: update write

**Projects 2**

- `google_bigquery.projects.get_service_account` Projects: get service account read
- `google_bigquery.projects.list` Projects: list read

**Tabledata 2**

- `google_bigquery.tabledata.insert_all` Tabledata: insert all write
- `google_bigquery.tabledata.list` Tabledata: list read

**Transfer locations 2**

- `google_bigquery.transfer_locations.get` Transfer locations: get read
- `google_bigquery.transfer_locations.list` Transfer locations: list read

**Transfer logs 2**

- `google_bigquery.transfer_logs.list` Transfer logs: list read
- `google_bigquery.transfer_logs.list_in_location` Transfer logs: list in location read

Questions

## The Google BigQuery MCP server, answered.

**Is there a Google BigQuery MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 134 Google BigQuery actions across transfer configs, assignments, data policies and data sources, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Google BigQuery.

**What do I need to connect Google BigQuery?**

Your own Google BigQuery OAuth app, registered with Google BigQuery (its client id and client secret), and the access and refresh tokens from one admin sign-in. actionlake has no Google BigQuery app of its own, so this is not a one-step consent. actionlake renews the access token as it expires. The free call account { op: "connections.requirements", service: "google_bigquery" } lists exactly what to paste.

**Can an AI agent delete or change things in Google BigQuery?**

Only if its key allows it, and only with an explicit confirmation. 24 Google BigQuery actions are destructive, including datasets: delete, tables: delete and jobs: delete. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my Google BigQuery API limit?**

actionlake paces every call to the limits in the Google BigQuery service file: 100 calls a second per connection. Repeated reads are answered from cache (65 Google BigQuery actions can be), which never reaches Google BigQuery.

**What does a Google BigQuery action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (28 Google BigQuery actions page). Cache hits, searches, dry runs and calls Google BigQuery refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which Google BigQuery API does it cover?**

The BigQuery API v2 (Discovery revision 20260922); BigQuery Data Transfer API v1 (Discovery revision 20261017); BigQuery Reservation API v1 (Discovery revision 20261017); BigQuery Connection API v1 (Discovery revision 20260922); BigQuery Data Policy API v1 (Discovery revision 20261014) at bigquery.googleapis.com. It is built from Google BigQuery's documentation as read on 22 October 2026. 134 actions in 21 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my Google BigQuery data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Google BigQuery credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like Google BigQuery

Shares the most action names with

- [Honeycomb 6](https://actionlake.com/connectors/honeycomb)
- [Microsoft Fabric 5](https://actionlake.com/connectors/microsoft-fabric)
- [Databox 5](https://actionlake.com/connectors/databox)
- [Domo 5](https://actionlake.com/connectors/domo)
- [Tableau 4](https://actionlake.com/connectors/tableau)
- [Qlik Cloud 3](https://actionlake.com/connectors/qlik-cloud)

Joins with, on shared entities

- [Keboola 2](https://actionlake.com/connectors/keboola)
- [NetSuite 1](https://actionlake.com/connectors/netsuite)
- [Google Vertex AI 1](https://actionlake.com/connectors/google-vertex-ai)
- [Appwrite Cloud 1](https://actionlake.com/connectors/appwrite-cloud)
- [Elasticsearch 1](https://actionlake.com/connectors/elasticsearch)
- [OpenSearch 1](https://actionlake.com/connectors/opensearch)

Browse

- [All Observability & analytics connectors](https://actionlake.com/connectors/category/observability-and-analytics)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Google BigQuery; the name is the vendor's own. Counts are from the Google BigQuery service file, version 1.0.0.

## Give your agent Google BigQuery today.

[Connect Google BigQuery free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/google-bigquery
More: https://actionlake.com/llms.txt
