MCP Bigquery Server logo

MCP Bigquery Server

by ergut

Read-only MCP access to BigQuery for natural-language queries, schema exploration, billing limits, and sensitive-field protection.

Install MCP Bigquery Server

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "ergut-mcp-bigquery-server": {
      "command": "npx",
      "args": [
        "-y",
        "@ergut/mcp-bigquery-server"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

npx -y @ergut/mcp-bigquery-server

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 25d ago.

Overview

The ergut/mcp-bigquery-server MCP server connects MCP-compatible clients to Google BigQuery for read-only SQL queries and schema exploration. It accepts only SELECT statements, checks queries with BigQuery dry runs, and can limit bytes billed. Optional configuration blocks specified fields and can scan datasets for sensitive column names. Reach for it when an AI assistant needs governed access to BigQuery data without warehouse mutations.

Use cases

  • Query BigQuery data with natural-language requests
  • Explore tables and materialized-view schemas
  • Restrict AI access to sensitive columns
  • Limit query spending by billed bytes

Key features

  • Read-only SELECT query execution
  • BigQuery dry-run validation
  • Table and materialized-view schema access
  • Configurable maximum bytes billed
  • Manual field-level restrictions
  • Automatic sensitive-field discovery

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

21/21 checks healthy over the last 80d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 10d ago via OSV.dev · @ergut/mcp-bigquery-server (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars148Stargazers on the source repository.
npm downloads4kPackage downloads in the last 30 days.
Last commit5mo agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How MCP Bigquery Server works

What ergut/mcp-bigquery-server does

The ergut/mcp-bigquery-server MCP server lets an MCP-compatible AI client work with data stored in Google BigQuery. It supports natural-language requests that are translated into read-only queries, along with dataset and schema exploration. Tables and materialized views are identified as separate resource types so an agent can understand what it is inspecting.

Read-only behavior is enforced at the query level. Only SELECT statements are accepted; mutation and data-export statements such as INSERT, UPDATE, DELETE, DROP, TRUNCATE, EXPORT DATA, and MERGE are rejected. Before execution, queries are checked with BigQuery’s dry-run planner.

This project belongs in the 🗄️ Databases category and is suited to analytics assistants that need access to warehouse data without permission to change it.

How it works

The server communicates through the Model Context Protocol and can be launched from an MCP client with npx. The client configuration supplies a Google Cloud project ID and starts the package as a local process. Authentication uses Google Cloud Application Default Credentials or, optionally, a service-account key file.

Each query can be constrained by a maximum billed-byte value. The server uses a default one-gigabyte limit when no configuration file is supplied, and a command-line value can override the configured limit. BigQuery location can also be specified; the default location is US.

Two operating modes are described. Simple Mode provides read-only querying and schema access without field restrictions. Protected Mode adds manually configured restrictions and optional automatic discovery of sensitive fields.

Setup and configuration

The prerequisites are Node.js 14 or newer, an enabled Google Cloud project with BigQuery, and either the Google Cloud CLI or a service-account key. Authenticate with gcloud auth application-default login, then add an MCP entry that runs npx -y @ergut/mcp-bigquery-server --project-id your-project-id.

Protected deployments can add --config-file and optionally --key-file and --location. The JSON configuration supports maximumBytesBilled, a preventedFields mapping of tables to restricted columns, SQL LIKE patterns for sensitive-field detection, and sensitiveFieldScanFrequencyDays. A scan frequency of zero disables automatic scanning.

Tools and capabilities

The ergut/mcp-bigquery-server MCP server supports:

  • Running read-only BigQuery SQL through natural-language requests.
  • Inspecting dataset schemas.
  • Accessing tables and materialized views.
  • Rejecting non-SELECT statements before execution.
  • Applying per-query maximum billed-byte limits.
  • Blocking configured columns from agent-accessible results.
  • Detecting sensitive column names across datasets using configurable patterns.

Field restrictions can cover categories such as names, email addresses, medical information, financial data, and secrets when matching fields are configured or discovered. The server can provide guidance for reformulating requests with aggregates or excluded columns rather than exposing restricted individual values.

Limitations and notes

Query results are sent to the connected LLM provider for processing, so field restrictions address what enters the model context; BigQuery IAM addresses who can reach the data. The README recommends local deployment and service-account authentication for sensitive-data scenarios, but this server does not make the LLM provider’s processing local.

Without --config-file, the server runs in Simple Mode with no field restrictions. Automatic sensitive-field scanning is available only in Protected Mode. The material describes read access and query controls, not write operations, and explicitly prevents warehouse mutation through the listed statement checks.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about MCP Bigquery Server

ergut/mcp-bigquery-server is an MCP server that connects AI clients to Google BigQuery for read-only SQL querying and schema exploration. It accepts SELECT statements, rejects warehouse mutations, validates queries with BigQuery dry runs, and supports billed-byte limits plus configurable restrictions for sensitive fields.

Install it through an MCP client configuration that runs `npx -y @ergut/mcp-bigquery-server` with your Google Cloud project ID. Authenticate with Google Cloud Application Default Credentials or provide a service-account key file, then restart or open the MCP client.

Yes, it works with Claude Desktop through an MCP server configuration. Add the npx command and `--project-id` to `claude_desktop_config.json`, authenticate to Google Cloud, and then ask Claude to query or inspect the configured BigQuery project.

Use Protected Mode with a `config.json` file and pass it using `--config-file`. Define restricted columns in `preventedFields`, or configure sensitive-field patterns and a scan frequency so matching columns across datasets are discovered and blocked.

Set a maximum billed-byte limit with `--maximum-bytes-billed` or the `maximumBytesBilled` configuration property. The default is one gigabyte when no configuration file is supplied, and the command-line value overrides the configuration value.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Bigquery Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/ergut-mcp-bigquery-server?style=directory)](https://allmcps.com/mcp/ergut-mcp-bigquery-server)
HTML Embed
<a href="https://allmcps.com/mcp/ergut-mcp-bigquery-server"><img src="https://allmcps.com/api/badge/ergut-mcp-bigquery-server?style=directory" alt="MCP Bigquery Server on AllMCPs" /></a>