mcpField
B
BigQuery MCP server

BigQuery MCP server

Local
github.com/LucasHildDatabases131Updated 38w ago

About BigQuery MCP server

A MCP server that gives LLMs access to BigQuery for inspecting schemas and running queries. It suits users who want MCP clients to work with BigQuery data. Configuration covers project, location, dataset filters and credentials.

Key features

  1. 01Executes SQL queries using BigQuery dialect
  2. 02Lists tables in the BigQuery project
  3. 03Describes the schema of a given table
  4. 04Filters by dataset with optional query timeout

Use cases

  1. 01Letting an LLM write and run BigQuery queries against known schemas
  2. 02Exploring BigQuery datasets and table structures within a chat session

MCP support

This is an MCP server that exposes the execute-query, list-tables and describe-table tools to MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"bigquery": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
Run commandnpx -y @smithery/cli

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@smithery/cli

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

BigQuery MCP server

smithery badge

A Model Context Protocol server that provides access to BigQuery. This server enables LLMs to inspect database schemas and execute queries.

Components

Tools

The server implements one tool:

  • execute-query: Executes a SQL query using BigQuery dialect
  • list-tables: Lists all tables in the BigQuery database
  • describe-table: Describes the schema of a specific table

Configuration

The server can be configured either with command line arguments or environment variables.

ArgumentEnvironment VariableRequiredDescription
--projectBIGQUERY_PROJECTYesThe GCP project ID.
--locationBIGQUERY_LOCATIONYesThe GCP location (e.g. europe-west9).
--datasetBIGQUERY_DATASETSNoOnly take specific BigQuery datasets into consideration. Several datasets can be specified by repeating the argument (e.g. --dataset my_dataset_1 --dataset my_dataset_2) or by joining them with a comma in the environment variable (e.g. BIGQUERY_DATASETS=my_dataset_1,my_dataset_2). If not provided, all datasets in the project will be considered.
--key-fileBIGQUERY_KEY_FILENoPath to a service account key file for BigQuery. If not provided, the server will use the default credentials.
--timeoutBIGQUERY_TIMEOUTNoMaximum time in seconds to wait for a query to complete. If not provided, queries will wait indefinitely.

Installation

Installing via Smithery

To install BigQuery Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install mcp-server-bigquery --client claude
Claude Code
claude mcp add bigquery --scope user --transport stdio -- uvx mcp-server-bigquery --project {PROJECT_ID} --location {{LOCATION}}
Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "bigquery": {
      "command": "uvx",
      "args": ["mcp-server-bigquery"],
      "env": {
        "BIGQUERY_PROJECT": "{{GCP_PROJECT_ID}}",
        "BIGQUERY_LOCATION": "{{GCP_LOCATION}}"
      }
    }
  }
}

Cursor

  1. Open Cursor Settings → MCP
  2. Click Add new global MCP server
  3. Add an entry for the BigQuery MCP, following the pattern below:
{
  "mcpServers": {
    "bigquery": {
      "command": "uvx",
      "args": ["mcp-server-bigquery"],
      "env": {
        "BIGQUERY_PROJECT": "{{GCP_PROJECT_ID}}",
        "BIGQUERY_LOCATION": "{{GCP_LOCATION}}"
      }
    }
  }
}

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.