Bigquery MCP Server
BigQuery data access through SQL queries, table listing, and schema descriptions.
Data last scanned today · Reviewed today
Overview
This server acts as a bridge, allowing LLMs to interact directly with BigQuery databases using standard BigQuery SQL dialect. It provides specialized tools for database exploration and retrieval, enabling models to list available tables, inspect specific table schemas, and execute arbitrary queries. Configuration is flexible, supporting authentication via service account key files or default environment credentials. It allows users to scope interactions to specific datasets or perform operations across an entire GCP project.
Our verdict
With a high-risk security score of 39/100, this server is currently intended for experimental use. The primary security concerns stem from the lack of review for its authentication methods and read-only mode capabilities, alongside the fact that it is a community-maintained project rather than an official offering. Given these factors, it is not recommended for environments where sensitive data access must be strictly governed.
- Uses zero direct dependencies to minimize supply chain surface area.
- Provides documented tools for schema inspection and SQL execution.
- Distributed under the MIT license.
- Includes support for scoped dataset restrictions.
- Authentication mechanisms lack formal security review.
- Read-only operational safety has not been verified.
- Community-maintained without official vendor oversight.
Tools
| Tool | Description | Risk |
|---|---|---|
| execute-query | Executes a SQL query using BigQuery dialect | medium |
| list-tables | Lists all tables in the BigQuery database | low |
| describe-table | Describes the schema of a specific table | low |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›Which configuration parameters are mandatory for this server?
You must provide the GCP project ID and the GCP location, which can be set using the --project and --location arguments or the BIGQUERY_PROJECT and BIGQUERY_LOCATION environment variables.
›Can I restrict the server to only access specific datasets?
Yes, you can specify individual datasets using the --dataset argument or the BIGQUERY_DATASETS environment variable. If these are not set, the server will default to considering all datasets within the project.
›How does the server handle authentication with BigQuery?
The server defaults to using standard application default credentials. Alternatively, you can specify the path to a service account key file using the --key-file argument or the BIGQUERY_KEY_FILE environment variable.
›Is it possible to set a limit on query execution time?
Yes, you can use the --timeout argument or the BIGQUERY_TIMEOUT environment variable to set a maximum number of seconds for the server to wait for a query to complete.
›What functionality is available for interacting with BigQuery schemas?
You can use the list-tables tool to see all tables in the database and the describe-table tool to retrieve the schema details for a specific table.
Alternatives
Changelog
Badge
Maintain this server? Add the live badge to your README.