mcpbeat Sign in

Bigquery MCP Server

answering

Bigquery is answering right now. Last checked 2 min ago. It exposes 9 tools.

Uptime history 91 days of history
91 days agonow
100.0%
Uptime 24h
92 of 92 checks
9
Tools
read from the server
48 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 84

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 27 August 2026. No other catalogue keeps this.

30 Oct 2 tool descriptions were rewritten execute_sql, execute_sql_readonly
21 Oct 3 tools changed the parameters they ask for6 times that day cancel_job, get_job, get_query_results
21 Oct 2 tool descriptions were rewritten execute_sql, execute_sql_readonly
20 Oct 2 tool descriptions were rewritten execute_sql, execute_sql_readonly
19 Oct 2 tool descriptions were rewritten execute_sql, execute_sql_readonly
13 Oct 3 tools changed the parameters they ask for6 times that day cancel_job, get_job, get_query_results
27 Sep 2 tool descriptions were rewritten execute_sql, execute_sql_readonly
27 Sep a tool appeared get_job
27 Sep a tool disappeared get_job
17 Sep 6 tool descriptions were rewritten execute_sql, execute_sql_readonly, get_dataset_info and 3 more
and 60 more, back to 27 August 2026

Nothing serious here today

Today is the operative word: we check Bigquery every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 2 min ago.

run in your terminal
claude mcp add mcp --transport http https://bigquery.googleapis.com/mcp
Settings → Connectors → Add custom connector, then paste this address
https://bigquery.googleapis.com/mcp
~/.codex/config.toml
[mcp_servers.mcp]
url = "https://bigquery.googleapis.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://bigquery.googleapis.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "mcp": {
      "type": "http",
      "url": "https://bigquery.googleapis.com/mcp"
    }
  }
}

Available tools 9

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

dataset
get_dataset_info
Get metadata information about a BigQuery dataset or BigLake namespace.
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.
execute
execute_sql
Run a SQL query in the project and return the result. Prefer the `execute_sql_readonly` tool if possible. This tool can execute any query that bigquery supports including: * SQL Queries (`SELECT`, `INSERT`, `UPDATE`, `DELETE`, `CREATE`, etc.) * AI/ML functions like `AI.FORECAST`, `AI.KEY_DRIVERS`, `ML.EVALUATE`, `ML.PREDICT` * Any other query that bigquery supports. Example Queries: ```sql -- Insert data into a table. INSERT INTO `my_project.my_dataset`.my_table (name, age) VALUES ('Alice', 30); -- Create a table. CREATE TABLE `my_project.my_dataset`.my_table ( name STRING, age INT64); -- DELETE data from a table. DELETE FROM `my_project.my_dataset`.my_table WHERE name = 'Alice'; -- Create Dataset CREATE SCHEMA `my_project.my_dataset` OPTIONS (location = 'US'); -- Drop table DROP TABLE `my_project.my_dataset`.my_table; -- Drop dataset DROP SCHEMA `my_project.my_dataset`; -- Create Model CREATE OR REPLACE MODEL `my_project.my_dataset.my_model` OPTIONS ( model_type = 'LINEAR_REG' LS_INIT_LEARN_RATE=0.15, L1_REG=1, MAX_ITERATIONS=5, DATA_SPLIT_METHOD='SEQ', DATA_SPLIT_EVAL_FRACTION=0.3, DATA_SPLIT_COL='timestamp') AS SELECT col1, col2, timestamp, label FROM `my_project.my_dataset.my_table`; ``` Queries executed using the `execute_sql` tool will always have the default job label `goog-mcp-server: true` automatically set in addition to any custom `labels` provided in the request. Queries are charged to the project specified in the `project_id` field. Query Execution Behavior: * If the query completes within the synchronous timeout (default 20 seconds or custom `timeout_ms`), the tool returns `job_complete: true` and the initial result rows directly. For fast queries, `job_id` may be omitted as no persistent background job is created; no further action or polling is needed. * If the query takes longer than `timeout_ms`, the tool returns `job_complete: false` and a `job_id`. In this case, use the `get_query_results` tool with `job_id` to poll until `job_complete: true`, or use `cancel_job` to abort the running query. * You can optionally specify `timeout_ms` to configure the maximum synchronous wait time in milliseconds (defaults to 20,000 ms), and `job_timeout_ms` to enforce a hard server-side timeout after which BigQuery automatically terminates the job.
execute_sql_readonly
Run a read-only SQL query in the project and return the result. Prefer this tool over `execute_sql` if possible. This tool is restricted to only `SELECT` statements. `INSERT`, `UPDATE`, and `DELETE` statements and stored procedures aren't allowed. If the query doesn't include a `SELECT` statement, an error is returned. For information on creating queries, see the [GoogleSQL documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax). IMPORTANT: For predictive and analytical tasks (forecasting, anomaly detection, key driver / root cause analysis, classification, churn prediction, or text generation), ALWAYS execute computation in-warehouse using BigQuery native AI/ML functions (`AI.FORECAST`, `AI.DETECT_ANOMALIES`, `AI.KEY_DRIVERS`, `AI.CLASSIFY`, `AI.GENERATE`) rather than exporting raw rows to a local Python sandbox. In-warehouse execution scales to billions of rows, preserves governance, and eliminates data egress latency. Example Queries: ```sql -- Count the number of penguins in each island. SELECT island, COUNT(*) AS population FROM bigquery-public-data.ml_datasets.penguins GROUP BY island -- Forecast data using AI.FORECAST SELECT * FROM AI.FORECAST(TABLE `project.dataset.my_table`, data_col => 'num_trips', timestamp_col => 'date', id_cols => ['usertype'], horizon => 30) -- Detect anomalies in time series data using AI.DETECT_ANOMALIES SELECT * FROM AI.DETECT_ANOMALIES( TABLE `project.dataset.historical_metrics`, TABLE `project.dataset.recent_metrics`, data_col => 'num_requests', timestamp_col => 'timestamp' ) -- Identify key drivers of metric changes using AI.KEY_DRIVERS SELECT * FROM AI.KEY_DRIVERS( TABLE `project.dataset.sales_summary`, metric_col => 'total_revenue', dimension_cols => ['region', 'product_category'], interest_label_col => 'is_current_quarter' ) -- Classify text into categories using AI.CLASSIFY SELECT ticket_id, AI.CLASSIFY(ticket_text, ['Billing', 'Technical Support', 'Feature Request']) AS category FROM `project.dataset.support_tickets` -- Generate text or summaries using AI.GENERATE SELECT review_id, AI.GENERATE(CONCAT('Summarize this customer review: ', review_text)).result AS summary FROM `project.dataset.reviews` ``` Queries executed using the `execute_sql_readonly` tool will always have the job label `goog-mcp-server: true` automatically set in addition to any custom `labels` provided in the request. Queries are charged to the project specified in the `project_id` field. Query Execution Behavior: * If the query completes within the synchronous timeout (default 20 seconds or custom `timeout_ms`), the tool returns `job_complete: true` and the result rows directly. For fast queries, `job_id` may be omitted as no persistent background job is created; no further action or polling is needed. * If the query takes longer than `timeout_ms`, the tool returns `job_complete: false` and a `job_id`. In this case, use the `get_query_results` tool with `job_id` to poll until `job_complete: true`, or use `cancel_job` to abort the running query. * You can optionally specify `timeout_ms` to configure the maximum synchronous wait time in milliseconds (defaults to 20,000 ms), and `job_timeout_ms` to enforce a hard server-side timeout after which BigQuery automatically terminates the job.
table
get_table_info
Get metadata information about a BigQuery table or BigLake table.
list_table_ids
List table ids in a BigQuery dataset or BigLake namespace. Supports pagination. Use `page_size` to limit results and `page_token` to retrieve next page.
cancel
cancel_job
Cancel a running BigQuery job. Use this tool to cancel a query job that is currently executing (i.e. returned `job_complete: false` with a `job_id` from `execute_sql` or `execute_sql_readonly`). Specify the `job_id` to abort.
job
get_job
Get information and status about a BigQuery job. Use this tool to check the status, statistics, or configuration of a job using its `job_id`.
results
get_query_results
Get the results of a BigQuery SQL query job. Use this tool ONLY when: 1. A previous `execute_sql` or `execute_sql_readonly` call returned `job_complete: false` with a `job_id` (poll with this tool until `job_complete: true`), OR 2. You need to paginate through additional rows using `page_token` or `start_index` for a previously completed job. Do NOT call this tool if the query already returned `job_complete: true` with all rows. Supports pagination. Use `max_results` to limit results and `page_token` to retrieve the next page of results.

Endpoints

URLTransportStateLatencyChecked
https://bigquery.googleapis.com/mcp streamable-http answering 63 ms 2 min ago

Alternatives to Bigquery

same job, measured the same way
Ipquery
by pipeworx-io

IPQuery MCP.

389 installs/wk 46 tools answering
Bigdata
by bigdata
answering
Patents MCP
by tushariitr-19

Patent search and prior art discovery via Google Patents on BigQuery

local only
Q
Quanti
by quanti

Query BigQuery, Snowflake, Redshift & Azure Synapse with natural language

answering
Bioregistry
by pipeworx-io

Bioregistry MCP.

416 installs/wk 48 tools answering
B
Brocamp
by brocamp

Brototype MCP Hub — Query Brocamp Data

local only
N8n
by pipeworx-io

n8n MCP — query your own n8n instance (BYO).

404 installs/wk 47 tools answering

Bigquery — questions

Answers built from our own checks of this server.

What can Bigquery do?
It exposes 9 tools, read directly from the server on our last check. Among them: cancel_job, execute_sql, execute_sql_readonly, get_dataset_info, get_job, get_query_results and 3 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Bigquery mostly used for?
Its tools cluster around execute, dataset and table. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Bigquery working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 48 ms. The bar chart above shows every period we have measured.
How do I connect Bigquery?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Bigquery need an API key?
No. Bigquery completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 9 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Bigquery?
It answers our handshake in 48 ms on average, which is faster than 99% of all working MCP servers we measure. That puts it in the quick quarter of the ecosystem. The comparison comes from our own checks across the whole registry, every 15 minutes.