MCP server

MCP Toolbox for Databases

MCP server published on oci as us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:0.31.0. Transports: streamable-http. Maintained in googleapis/mcp-toolbox.

Checked 2026-10-31

Install

Claude Code
claude mcp add mcp-toolbox-for-databases -- docker run -i --rm us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:0.31.0

Commands come from the project's own docs or registry entry. Check them against the source before you run them.

Loading poll...

Google runs a remote BigQuery MCP server at https://bigquery.googleapis.com/mcp. It turns on when you enable the BigQuery API, signs in with Google Cloud IAM and OAuth 2.0, and lets an agent list datasets and tables, read schemas and run SQL. One tool, execute_sql_readonly, only allows SELECT statements. We checked Google's docs on 31 October 2026.

Quick facts

Maintainer

Google Cloud

Remote endpoint

https://bigquery.googleapis.com/mcp (global)

Transport

Streamable HTTP

Auth

OAuth 2.0 with IAM; Google Cloud identities, OAuth client, or agent identity

OAuth scope

https://www.googleapis.com/auth/bigquery

Enabled by

Enabling the BigQuery API in the project

Roles

MCP Tool User, BigQuery Job User, BigQuery Data Viewer, plus task-specific roles

Read-only tool

execute_sql_readonly (SELECT only)

Read-write tool

execute_sql, which can be blocked with a deny policy

Local option

googleapis/mcp-toolbox, Apache-2.0, v1.15.0 (23 Oct 2026), prebuilt BigQuery tools

Source of the remote server

Not public; documented on cloud.google.com

Extra cost

No MCP fee found; BigQuery query and storage pricing applies

Two things carry the same name, so we separate them. The first is the remote server, run by Google and the one Google's docs point to first. The second is the local route, where you run MCP Toolbox for Databases yourself with a BigQuery configuration. We cover both.

What it does

Google's page says you can use the remote server "to perform tasks such as running queries, getting metadata, and listing resources", from clients including Antigravity, ChatGPT, Claude and custom apps. In practice an agent finds the right table, reads its schema, writes a query and reads the result.

The tool list on Google's reference page, as we read it:

Tool

What it does

Writes?

list_dataset_ids

List dataset IDs and BigLake namespaces in a project, with paging

No

get_dataset_info

Metadata for a dataset or BigLake namespace

No

list_table_ids

List tables in a dataset, with paging

No

get_table_info

Metadata for a table or BigLake table

No

execute_sql_readonly

Run a SELECT query

No

execute_sql

Run any query BigQuery supports, including INSERT, UPDATE, DELETE, CREATE and DROP

Yes

The reference page also lists get_query_results, cancel_job and get_job, which cover long-running jobs: fetching results, cancelling and checking a job.

The tool descriptions steer the agent toward in-warehouse work. For forecasting, anomaly detection, key-driver analysis, classification and text generation, they tell the model to use BigQuery's AI.FORECAST, AI.DETECT_ANOMALIES, AI.KEY_DRIVERS, AI.CLASSIFY and AI.GENERATE functions rather than exporting rows to a local sandbox. That keeps data in place and scales, and it also means the agent writes SQL that calls AI functions, which may cost more than a plain SELECT. Check function pricing before you let an agent loop.

What it costs

We found no separate MCP charge on the pages we read. The costs are BigQuery's own: query processing and storage under your pricing model, and any AI function usage. Check BigQuery's pricing page for current on-demand and capacity rates. Google's page also says the MCP server has no quotas of its own, while the underlying APIs keep theirs.

The money risk is a large scan. BigQuery on-demand pricing bills by data processed, so SELECT * over a huge table is expensive. The docs do not describe a per-query byte cap for the MCP tools, though BigQuery itself supports maximum bytes billed settings and quotas. Set project-level quotas as a backstop.

Google's tools tag the jobs they run. The sample prompts mention the label goog-mcp-server:true, which identifies query jobs that ran through the MCP server, so you can find and total them afterwards.

Limits from Google's docs

  • execute_sql and execute_sql_readonly cannot query Google Drive external tables.
  • Queries are cancelled after three minutes by default.
  • Results are capped at 3,000 rows.
  • execute_sql_readonly allows only read operations. DML, DDL and Python UDFs are not supported, and neither is Graph Query Language.

Three minutes and 3,000 rows are plenty for exploration and poor for exports. An agent that needs a full table should write to a destination table or use an export, not stream rows through chat.

Set it up

Project and roles

  1. Create or choose a Google Cloud project, with billing or the BigQuery sandbox.
  2. Enable the BigQuery API. That enables the remote MCP server.
  3. Grant the roles on the project:

Role

ID

Purpose

MCP Tool User

roles/mcp.toolUser

Make MCP tool calls

BigQuery Job User

roles/bigquery.jobUser

Run BigQuery jobs

BigQuery Data Viewer

roles/bigquery.dataViewer

Query data

The permissions behind them are mcp.tools.call, bigquery.jobs.create and bigquery.tables.getData. Google notes additional permissions may be needed for a task.

Use a separate identity

Google's advice is direct: "We recommend that you create a separate identity for agents that are using MCP tools so that access to resources can be controlled and monitored." Make a service account or agent identity for this, grant it Data Viewer only on the datasets the agent needs, and keep Job User at the project level.

Generic client settings

From Google's page, for any client with a remote-server option:

Field

Value

Server name

BigQuery MCP server

Endpoint

https://bigquery.googleapis.com/mcp

Transport

Streamable HTTP

Scope

https://www.googleapis.com/auth/bigquery

Authentication

Google Cloud credentials, OAuth client ID and secret, or agent identity

Custom redirect URIs are not supported, so web and desktop clients must use the redirect URI the client documents.

Install it in each agent

Google's page names Antigravity, ChatGPT and Claude, and gives generic settings for others. The lines below are our adaptation from the generic values and each agent's own docs. See MCP clients for how these agents name fields.

Claude Code

Our adaptation:

claude mcp add --transport http bigquery https://bigquery.googleapis.com/mcp

Then run /mcp and authenticate. Google's page says the server uses OAuth 2.0 with IAM, and that clients can use your Google Cloud credentials, your own OAuth client ID and secret, or an agent identity. We did not test each agent's sign-in, so expect to supply your own OAuth client in some of them.

Codex

Our adaptation, in ~/.codex/config.toml:

[mcp_servers.bigquery]
url = "https://bigquery.googleapis.com/mcp"

Then codex mcp login bigquery. We did not test Codex against Google's OAuth.

Cursor

Our adaptation, in ~/.cursor/mcp.json:

{
  "mcpServers": {
    "bigquery": { "url": "https://bigquery.googleapis.com/mcp" }
  }
}

Antigravity

Google names Antigravity as a supported client. The config-file form, our adaptation, goes in ~/.gemini/config/mcp_config.json with the Streamable HTTP URL in serverUrl:

{
  "mcpServers": {
    "bigquery": { "serverUrl": "https://bigquery.googleapis.com/mcp" }
  }
}

Google's setup page has a client-specific guide that names Antigravity; follow it for how credentials are passed. Gemini CLI is now Code Assist enterprise only.

OpenCode

Our adaptation, in opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "bigquery": {
      "type": "remote",
      "url": "https://bigquery.googleapis.com/mcp",
      "oauth": {}
    }
  }
}

Google's page does not mention OpenCode, so this block is our adaptation and untested.

The local route: MCP Toolbox for Databases

Google's page says you might choose a local server when you need a custom tool over a parameterized SQL query, or when you do not have permission to enable or use the remote server in your project. The local server is MCP Toolbox for Databases (googleapis/mcp-toolbox, Apache-2.0, renamed from genai-toolbox). Its README lists BigQuery among prebuilt database targets:

{
  "mcpServers": {
    "toolbox-bigquery": {
      "command": "npx",
      "args": ["-y", "@toolbox-sdk/server", "--prebuilt=bigquery", "--stdio"],
      "env": { "BIGQUERY_PROJECT": "your-project-id" }
    }
  }
}

The --prebuilt=postgres form is the README's own example, and we swapped the target. Look up the environment variable names for the BigQuery configuration in the Toolbox docs. The README also says prebuilt tools are available in the Antigravity MCP Store with click-to-install, and that you can load one toolset with the --prebuilt=<database>/<toolset> form.

Remote server

Toolbox, local

Runs

On Google's infrastructure

On your machine

Auth

IAM and OAuth

Application default credentials or your config

Custom tools over parameterized SQL

No

Yes

Needs API enablement for MCP

Yes

No

Audit logging

Centralized, per Google

Your own

Updates

Always current

The version you install

Security notes

Google's docs give more governance detail than most vendors, and it is worth using.

  • Least privilege. Use a dedicated identity. Data Viewer on specific datasets, not the whole project.
  • Block writes. The only tool that is not read-only is execute_sql. Google says you can restrict it with a deny policy for read-write MCP tool use. Do that, and let agents use execute_sql_readonly.
  • Centralized audit logging. Google lists it as a feature of its remote MCP servers, and the goog-mcp-server:true job label helps you find the queries.
  • Model Armor. Google offers Model Armor to screen prompts and responses for malicious input and sensitive data. It is optional, and the docs warn about behaviour in jurisdictions it does not support, which can affect data residency.
  • Data leaves BigQuery. Query results go to the model provider. Mask or exclude columns with personal data. BigQuery column-level security and policy tags still apply to your identity.
  • Prompt injection. Table contents can be written by outsiders, such as form text or reviews. A row that tells the model to run execute_sql is a real risk if writes are allowed.
  • Cost. Use quotas and maximum bytes billed on the project.
  • The 2026-07-28 protocol. Google's page notes the MCP protocol moved to a stateless design with required headers. Older clients may not support it, so check your agent's release notes.

Example prompts

Google's samples, shortened:

Prompt

Tools

Risk

"List the datasets in project X"

list_dataset_ids

Read only

"Find the top orders by volume. Identify the right tables, find the schema, show results."

List, info and SQL tools

Scan cost

"Create a forecast on this table for future years"

execute_sql_readonly with AI.FORECAST

AI function cost

"Find the queries I ran through the MCP server"

SQL against job metadata

Read only

Limits and known issues

  • Three-minute query timeout and 3,000-row cap.
  • No Google Drive external table queries.
  • GQL is not supported on the read-only tool.
  • The remote server needs the API enabled and IAM roles granted by an administrator, which blocks some users.
  • Client support for Google's OAuth flow may vary, and we did not test each agent.
  • Advanced features, such as scheduling, permission management and reservations, are not in this server. Google points to the run_bq_command tool in the Google Cloud CLI MCP server for those.

Alternatives

Option

Fits when

Notes

Remote BigQuery MCP

You are on Google Cloud and want managed auth and audit

Google-run

MCP Toolbox, local

You need custom parameterized tools or cannot enable the remote server

Apache-2.0

Snowflake MCP

Your warehouse is Snowflake

Different platform

Postgres MCP

You have PostgreSQL, including through Toolbox

Direct SQL

Azure MCP

You are on Azure

Includes SQL, Cosmos DB and more

Grafana MCP

You want dashboards on top of data

Observability

Our take

For BigQuery on Google Cloud, the remote server is the cleanest route we have read about. Managed endpoint, IAM instead of passwords, a separate read-only SQL tool, a deny-policy switch for the one write tool, audit logs and a job label for tracing. Google has thought about the failure modes.

The weak points are practical. Setup needs someone with rights to enable the API and grant roles. Client support for Google's OAuth is uneven across agents, so expect to test. And cost control is on you: quotas and bytes-billed limits, because an agent that writes a wide scan can spend real money in one query.

Our plan: dedicated identity, Data Viewer on named datasets, deny execute_sql, set a project quota, then try one question on a small table.

This is our reading of the documentation, not a hands-on test.

A short setup checklist

  1. Choose a project and enable the BigQuery API.
  2. Create a service account or agent identity for the agent.
  3. Grant MCP Tool User, Job User and Data Viewer on named datasets.
  4. Create a deny policy for execute_sql.
  5. Set project quotas and a maximum bytes billed.
  6. Add the endpoint to your agent and authenticate.
  7. Ask it to list datasets, then query a small table.
  8. Check the goog-mcp-server:true jobs afterwards.

See also the MCP server list and best MCP servers.

Frequently asked questions

What is the BigQuery MCP server URL?

https://bigquery.googleapis.com/mcp, over Streamable HTTP, enabled with the BigQuery API.

Which IAM roles do I need?

MCP Tool User, BigQuery Job User and BigQuery Data Viewer on the project, plus more for some tasks.

Can I make it read-only?

Yes. Use execute_sql_readonly and deny execute_sql with a policy.

Are there query limits?

Three minutes by default and 3,000 result rows, per Google's docs.

Is there a local, open-source option?

Yes, MCP Toolbox for Databases under Apache-2.0 has a prebuilt BigQuery setup.

Mentioned here

  • dbx MCP

    DBX is a 25 MB cross-platform database client for more than 100 databases, including MySQL, PostgreSQL, SQLite, Redis, MongoDB, DuckDB and SQL Server, according to its GitHub description.

    • MCP server

    t8y2 · 28,263 stars

  • OpenMetadata MCP

    OpenMetadata, per its repository, is an open platform for building trusted data context and business semantics for humans and AI, and this entry is the MCP endpoint at your own host under /mcp, over streamable HTTP.

    • MCP server

    open-metadata · 15,634 stars

  • Metabase MCP

    Metabase is an open-source business intelligence and embedded analytics tool, and this entry is the MCP endpoint its server exposes at your own host under /api/mcp, over streamable HTTP.

    • MCP server

    metabase · 50,029 stars

  • Nhost MCP

    Nhost is described as the open-source Firebase alternative with GraphQL, and this entry is its MCP server, shipped as a container run with docker run -i --rm docker.io/nhost/mcp:0.3.0 and exposed over streamable HTTP.

    • MCP server

    nhost · 9,376 stars

Works with

Tried it with one of these? Vote below: works for me, or not.

Questions

What is the BigQuery MCP server URL?

The global remote endpoint is https://bigquery.googleapis.com/mcp. It uses Streamable HTTP and is enabled when you enable the BigQuery API in a project.

Which IAM roles do I need?

Google lists MCP Tool User (roles/mcp.toolUser), BigQuery Job User (roles/bigquery.jobUser) and BigQuery Data Viewer (roles/bigquery.dataViewer) on the project, plus more depending on the task.

Can I make it read-only?

Yes. Use the execute_sql_readonly tool, and create a deny policy that blocks the execute_sql tool, which is the only tool that is not read-only.

Are there query limits?

Per Google's docs, queries are cut off after three minutes by default and results are capped at 3,000 rows.

Is there a local, open-source option?

Yes. Google's MCP Toolbox for Databases (googleapis/mcp-toolbox, Apache-2.0) has a prebuilt BigQuery configuration you run yourself.

Loading poll...

Reviews

Loading reviews…

Write a review

Your rating

Up to 1000 characters. Stars alone are enough.

Sources

  1. cloud.google.com/bigquery/docs/use-bigquery-mcp
  2. cloud.google.com/bigquery/docs/reference/mcp
  3. github.com/googleapis/mcp-toolbox
  4. mcp-toolbox.dev/documentation/configuration/prebuilt-configs/
  5. code.claude.com/docs/en/mcp
  6. developers.openai.com/codex/mcp
  7. antigravity.google/docs/mcp
  8. opencode.ai/docs/mcp-servers
  9. docs.cloud.google.com/bigquery/docs/reference/mcp

Similar

  • browser-use MCP

    Browser Use is an open-source Python library for AI browser agents, and our entry covers its MCP route.

    • MCP server
    • Official

    browser-use · 119,597 stars

  • Scrapling MCP Server

    Scrapling is a Python web scraping framework from D4Vinci, described on GitHub as handling everything from a single request to a full-scale crawl, and this entry is its MCP server.

    • MCP server

    D4Vinci · 90,477 stars

  • Netdata MCP

    Netdata is an observability platform, and this entry is its hosted MCP endpoint at app.netdata.cloud, reached over streamable HTTP.

    • MCP server

    netdata · 81,227 stars

  • claude-flow MCP

    Claude Flow is published on npm as claude-flow, and its repository now sits at ruvnet/ruflo, which the GitHub description calls the original agent harness for deploying multi-agent swarms and coordinating autonomous workflows.

    • MCP server

    ruvnet · 80,298 stars

  • Context7 MCP

    Context7 is an MCP server from Upstash that serves up-to-date library documentation to coding agents, so the model reads current docs instead of guessing from training data.

    • MCP server

    upstash · 63,974 stars

  • Chrome DevTools MCP

    MCP server published on npm as chrome-devtools-mcp. Transports: stdio. Maintained in ChromeDevTools/chrome-devtools-mcp.

    • MCP server

    ChromeDevTools · 54,503 stars

Part of the Wbcom Designs family

The all-in-one WordPress community stack

Also ours: wbcomdesigns.comvapvarun.combrndle.com