PluginBench
MCP Server
Maintained
MIT

io.github.SnowLeopard-AI/bigquery-mcp MCP Server

io.github.SnowLeopard-AI/bigquery-mcp

AI-powered natural language access to Google BigQuery datasets through MCP.

What is the io.github.SnowLeopard-AI/bigquery-mcp MCP server?

The Snow Leopard BigQuery MCP server is a Model Context Protocol bridge that enables AI agents like Claude to query and explore Google BigQuery databases using natural language. It provides schema inspection, table listing, and SQL query execution capabilities for seamless data interaction.

This MCP server connects AI agents to BigQuery datasets, allowing you to ask natural language questions about your data and execute SQL queries. It's useful for data analysis, exploration, and building AI applications that need direct access to BigQuery without manual query writing.

How to install io.github.SnowLeopard-AI/bigquery-mcp

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "bigquery-mcp": {
      "command": "uvx",
      "args": [
        "sl-bigquery-mcp"
      ]
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • query — Execute BigQuery SQL and return results
  • list_tables — List available tables in the configured dataset(s)
  • get_schema — Get the schema of a given table

Use cases

  • Ask natural language questions about BigQuery data and get instant answers
  • Explore table schemas and available datasets through AI conversation
  • Execute complex SQL queries through Claude without writing SQL manually
  • Build AI applications that analyze and report on BigQuery data
  • Integrate BigQuery analysis into AI-powered workflows and agents

io.github.SnowLeopard-AI/bigquery-mcp MCP server FAQ

What is the Snow Leopard BigQuery MCP server?

It's an MCP server that bridges AI agents (like Claude) to Google BigQuery, enabling natural language queries, schema exploration, and SQL execution against your BigQuery datasets.

Is it free to use?

Yes, the server itself is open-source and free. You only pay for BigQuery queries executed through Google Cloud.

How do I install it in Claude Desktop?

Install via PyPI (sl-bigquery-mcp), authenticate with Google Cloud using `gcloud auth application-default login`, then add the server to your claude_desktop_config.json with your project and dataset details.

What authentication is required?

You need a Google Cloud project with BigQuery enabled and must authenticate locally using the Google Cloud CLI (gcloud). The server uses your application-default credentials.

Can I query multiple datasets?

Yes, you can specify multiple datasets or tables using the --dataset and --table configuration options when starting the server.

What transport protocols does it support?

The server supports stdio (default), SSE, and streamable-HTTP transport protocols via the --mode configuration option.

README (reference)

Source of truth, from the repository.

<h1 style="display: flex; align-items: center;"> Snow Leopard BigQuery MCP </h1> <!-- mcp-name: io.github.SnowLeopard-AI/bigquery-mcp -->

Test Coverage PyPI - Version Discord

<br> <div style="text-align: center;"> <img src="logo.png" alt="Snow Leopard BigQuery MCP Logo" style="height: 8.0em;" /> </div> <br> <br>

A Model Context Protocol (MCP) server for Google BigQuery that enables AI agents to interact with BigQuery databases through natural language queries and schema exploration.

This project was developed by Snow Leopard AI as a benchmarking tool for our platform, and we're making it publicly available for the community to use and build upon.

What is MCP?

The Model Context Protocol (MCP) is an open standard that allows AI applications to securely connect to external data sources and tools. This BigQuery MCP server acts as a bridge between AI agents and your BigQuery datasets.

Snow Leopard BigQuery MCP Server Features

Resources

Resource URIDescription
bigquery://tablesList all tables available to the agent
bigquery://tables/{table}/schemaGet the schema of a specific table

Tools

ToolDescription
list_tables(table: str) (optional)List available tables
get_schema(table: str) (optional)Get the schema of a given table
query(sql: str)Execute BigQuery SQL and return results

Quick Start: Claude Desktop

Prerequisites

Before getting started, ensure you have:

1. Setup Google Cloud

First, we need to authenticate with Google.

gcloud auth application-default login

This opens your browser to authenticate your local machine with Google Cloud.

2. Configure Claude Desktop

Edit your claude_desktop_config.json file to add the BigQuery MCP server.

Application: Claude > Settings > Developer > Edit Config
Mac: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\\Claude\\claude_desktop_config.json

You will need to set your project to a Google Cloud project with permissions to submit bigquery jobs. If you do not have a project that you can run bigquery jobs on, create and test one by following Google's BigQuery Quickstart Guide Create a project and follow the instructions to query a public dataset.

{
  "mcpServers": {
    "bigquery": {
      "command": "uvx",
      "args": [
        "sl-bigquery-mcp", 
        "--dataset",
        "bigquery-public-data.usa_names",
        "--project",
        "🚨 <projectName> 🚨"
      ]
    }
  }
}

3. Close Claude Desktop and Launch it from the terminal

Depending on how you have installed uv, the uvx executable may not be in Claude Desktop's PATH if it is launched from the GUI. To be sure uvx is accessible from Claude Desktop, let's run it in the terminal.

open -a claude

After saving the configuration, restart Claude Desktop. You should now be able to ask Claude questions about your BigQuery data!

Example Query

What are the top 10 most popular names in 2020?

Configuration Options

To see a complete list of parameters:

uvx sl-bigquery-mcp --help
Usage: sl-bigquery-mcp [OPTIONS]

╭─ Options ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --mode                       [stdio|sse|streamable-http]  MCP transport protocol [default: stdio]                                                     │
│ --dataset                    TEXT                         Dataset(s) for mcp resources. Will create resources for all tables.                         │
│ --table                      TEXT                         Table(s) for mcp resources. Can be specified as project.dataset.table or dataset.table      │
│ --enable-list-tables-tool    --no-enable-list-tables-tool Registers list_resources tool [default: enable-list-tables-tool]                            │
│ --enable-schema-tool         --no-enable-schema-tool      Registers get_schema tool [default: enable-schema-tool]                                     │
│ --project                    TEXT                         BigQuery project [env var: BQ_PROJECT] [default: None]                                      │
│ --api-method                 [INSERT|QUERY]               BigQuery client api_method [default: QUERY]                                                 │
│ --port                       INTEGER                      [default: 8000]                                                                             │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯

Troubleshooting / FAQ

An MCP Error has occurred

First, check out your Claude Desktop app logs (in the same directory as the config file) for more verbose errors / logging

On Startup

This usually means Claude is having issues starting the mcp server. Frequently this is due to uvx being inaccessible from the application. In this case, use the full path to your uvx executable instead of just uvx in claude_desktop_config.json.

To find your uv executable, run

which uvx

Otherwise, this may be caused by bad arguments, dependency version incompatibilities, or bugs. If you run into the last two, please file an issue describing the problem.

On Resource / Tool Usage

This may be a misconfiguration mcp server, authentication issues, the llm getting too much data, or of course, product bugs. After checking the logs, consider using the MCP Inspector to debug your issue. And of course, file any bugs you find on our issue board.

Local Development & Testing

Setup Development Environment

  1. Clone the repository
  2. Setup virtual environment and install dependencies
  3. Verify installation
git clone https://github.com/SnowLeopard-AI/bigquery-mcp.git
cd bigquery-mcp

uv sync
source .venv/bin/activate

sl-bigquery-mcp --help

Authenticate with Google Cloud

The following command will launch a browser for you to login to your google cloud account. You must have a Google Cloud project with BigQuery enabled. If you don't, see Google's bigquery setup guide.

gcloud auth application-default login
gcloud config set project <projectName>
gcloud auth application-default set-quota-project <projectName>

Running Tests

Run the tests to make sure your dev environment is properly configured.

pytest tests

Note: the tests run actual BigQuery queries against public datasets and require authentication.

Local MCP Inspector

For hands-on testing and development, use the MCP Inspector tool:

npx @modelcontextprotocol/inspector uv run sl-bigquery-mcp --dataset bigquery-public-data.usa_names

Contributing

We welcome contributions! Please coordinate with us on discord to ensure your changes can quicly make it into the repo. Communicating before coding always saves time.

For logistics of contributing to an open source project, see the first contributions repository.

Support

Issues: GitHub Issues
Documentation: BigQuery Documentation
MCP Protocol: Model Context Protocol
Contact: Discord Server

Related MCP servers

Deprecated community MCP server for Snowflake Cortex AI and SQL tooling — migrate to the official Snowflake MCP Server instead.

291
Python
Apache-2.0
View repository →

Injects secrets into shell commands at exec time; plaintext never reaches the LLM context

1
TypeScript
MIT
View repository →

Neutral freight reference + validation layer for AI agents: ADR, HS, UN/LOCODE, freight math

3
TypeScript
MIT
View repository →

Transcribe audio/video and find dead air. Pay-per-call in USDC over x402 — no account, no key.

0
JavaScript
View repository →

Unified social media API for AI agents. Access Facebook, Instagram, TikTok, and more.

1
JavaScript
MIT
View repository →
AGagentburn logo

agentburn

Active

Local profiler: which usage window took you out, and where your agent's money goes

1
Python
MIT
View repository →