BigQuery MCP server for Claude, ChatGPT and Cursor

Ask Claude, Cursor, ChatGPT, or any other MCP client something like "how many active users came from paid channels last month?" and it queries your live BigQuery project for the real answer. SaturnSQL's hosted MCP server gives it the tools, no service account key to manage locally.

ClaudeMCP · analytics.events
You
How many active users came from paid channels last month?
execute_query
SELECT source, COUNT(DISTINCT user_id) AS active_users
FROM `analytics.events`
WHERE event_date >= DATE_SUB(CURRENT_DATE(), INTERVAL 1 MONTH)
  AND source IN ('ads', 'paid_social')
GROUP BY source
ORDER BY 2 DESC;
sourceactive_users
ads2,140
paid_social1,362
Claude
3,502 active users from paid channels last month.

Setup

1. Add your BigQuery connection in SaturnSQL: your project ID and a service account JSON key. Give the service account only the BigQuery Data Viewer and Job User IAM roles. See setting up a read-only BigQuery service account. The key is encrypted at rest and shown to you exactly once.

2. Click your name in the sidebar, then Install MCP, and pick your client: Claude, ChatGPT, Cursor or Claude Code. You add https://mcp.saturnsql.com/mcp and sign in with your SaturnSQL account, with no API key to copy and no local BigQuery MCP server or credential file to manage.

From there your AI client can list datasets and tables, read INFORMATION_SCHEMA, and run SQL against your project, with the same row limits SaturnSQL uses everywhere else, and read-only when the connection is in read-only mode (the default for new connections).

Other BigQuery MCP servers

Google runs its own hosted BigQuery MCP server, and if BigQuery is your only database it is the natural first thing to try.

ServerRuns asWorks withRead-only
BigQuery MCP server (Google)Hosted by Google, OAuth plus IAM rolesBigQuerySeparate execute_sql_readonly tool; 3,000-row and 3-minute limits
MCP Toolbox for Databases (Google)Binary you run and configure yourselfBigQuery, Cloud SQL, AlloyDB, Postgres, MySQL, SQL Server, Oracle, ClickHouse and moreDepends on the tools you define per source
SaturnSQLHosted, OAuthBigQuery and every other engine SaturnSQL connects toRead-only mode (on for new connections): one SELECT, WITH or EXPLAIN statement per call

Checked against each project's docs on 8 October 2026.

SaturnSQL fits when BigQuery is one of several databases your team queries, when you want access scoped to one service account instead of each user's IAM roles, or when the queries the assistant writes should land in a shared library and run on a schedule. For every engine side by side, see the best MCP servers for databases.

Common questions

Can my AI client run expensive queries by accident? The service account should carry only Data Viewer and Job User, and execution is row-limited the same way the editor is. For tighter control, set a custom query cost cap on the service account's project in GCP.

Can I limit my AI client to specific datasets? Scope the service account's IAM roles to specific datasets instead of project-wide. See the BigQuery setup guide.

What plan do I need? The MCP server is included on SaturnSQL Starter and above. The free plan can try the editor with one connection, but it cannot connect an AI client.

Does the AI client see my database password? No. The connection and its credentials stay encrypted in SaturnSQL. Your AI client signs in with your SaturnSQL account and only receives query results.

Can it change or delete data? Not unless you allow it. New connections start in read-only mode, where every query must be a single SELECT, WITH or EXPLAIN statement. Keep read-only mode on for the connections your AI client uses, and connect with a read-only database user as well.

Rolling this out to a team? Database governance for MCP and AI covers choosing, per connection, what AI clients may query.

Other databases

Not on BigQuery? Claude, ChatGPT, Cursor, and Claude Code all connect to PostgreSQL, MySQL, Oracle, SQL Server, ClickHouse, and Redshift the same way, or see the full MCP server overview for the rest.

Get answers from your BigQuery data in Claude, Cursor, or ChatGPT