NestDaddy

BigQuery Data Platform

io.github.deBilla/data-platform-mcp · v0.4.0

Read-only BigQuery tools for plain-language data questions, with a cost gate on every query

Connect Runs on your machine

Terminal
claude mcp add data-platform-mcp -e BQ_MCP_ENVIRONMENTS=<BQ_MCP_ENVIRONMENTS> -e BQ_MCP_DEFAULT_ENVIRONMENT=<BQ_MCP_DEFAULT_ENVIRONMENT> -e BQ_MCP_CONFIG=<BQ_MCP_CONFIG> -e BQ_IMPERSONATE_SERVICE_ACCOUNT=<BQ_IMPERSONATE_SERVICE_ACCOUNT> -e BQ_PROJECT=<BQ_PROJECT> -e BQ_LOCATION=<BQ_LOCATION> -e BQ_CODE_ASSET_LOCATION=<BQ_CODE_ASSET_LOCATION> -e BQ_DATASET_ALLOWLIST=<BQ_DATASET_ALLOWLIST> -e BQ_WARN_BYTES=<BQ_WARN_BYTES> -e BQ_MAX_BYTES_BILLED=<BQ_MAX_BYTES_BILLED> -e BQ_MCP_AUDIT_LOG=<BQ_MCP_AUDIT_LOG> -- uvx data-platform-mcp==0.4.0
claude_desktop_config.json
{
  "mcpServers": {
    "data-platform-mcp": {
      "command": "uvx",
      "args": [
        "data-platform-mcp==0.4.0"
      ],
      "env": {
        "BQ_MCP_ENVIRONMENTS": "<BQ_MCP_ENVIRONMENTS>",
        "BQ_MCP_DEFAULT_ENVIRONMENT": "<BQ_MCP_DEFAULT_ENVIRONMENT>",
        "BQ_MCP_CONFIG": "<BQ_MCP_CONFIG>",
        "BQ_IMPERSONATE_SERVICE_ACCOUNT": "<BQ_IMPERSONATE_SERVICE_ACCOUNT>",
        "BQ_PROJECT": "<BQ_PROJECT>",
        "BQ_LOCATION": "<BQ_LOCATION>",
        "BQ_CODE_ASSET_LOCATION": "<BQ_CODE_ASSET_LOCATION>",
        "BQ_DATASET_ALLOWLIST": "<BQ_DATASET_ALLOWLIST>",
        "BQ_WARN_BYTES": "<BQ_WARN_BYTES>",
        "BQ_MAX_BYTES_BILLED": "<BQ_MAX_BYTES_BILLED>",
        "BQ_MCP_AUDIT_LOG": "<BQ_MCP_AUDIT_LOG>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "data-platform-mcp": {
      "command": "uvx",
      "args": [
        "data-platform-mcp==0.4.0"
      ],
      "env": {
        "BQ_MCP_ENVIRONMENTS": "<BQ_MCP_ENVIRONMENTS>",
        "BQ_MCP_DEFAULT_ENVIRONMENT": "<BQ_MCP_DEFAULT_ENVIRONMENT>",
        "BQ_MCP_CONFIG": "<BQ_MCP_CONFIG>",
        "BQ_IMPERSONATE_SERVICE_ACCOUNT": "<BQ_IMPERSONATE_SERVICE_ACCOUNT>",
        "BQ_PROJECT": "<BQ_PROJECT>",
        "BQ_LOCATION": "<BQ_LOCATION>",
        "BQ_CODE_ASSET_LOCATION": "<BQ_CODE_ASSET_LOCATION>",
        "BQ_DATASET_ALLOWLIST": "<BQ_DATASET_ALLOWLIST>",
        "BQ_WARN_BYTES": "<BQ_WARN_BYTES>",
        "BQ_MAX_BYTES_BILLED": "<BQ_MAX_BYTES_BILLED>",
        "BQ_MCP_AUDIT_LOG": "<BQ_MCP_AUDIT_LOG>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "data-platform-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "data-platform-mcp==0.4.0"
      ],
      "env": {
        "BQ_MCP_ENVIRONMENTS": "<BQ_MCP_ENVIRONMENTS>",
        "BQ_MCP_DEFAULT_ENVIRONMENT": "<BQ_MCP_DEFAULT_ENVIRONMENT>",
        "BQ_MCP_CONFIG": "<BQ_MCP_CONFIG>",
        "BQ_IMPERSONATE_SERVICE_ACCOUNT": "<BQ_IMPERSONATE_SERVICE_ACCOUNT>",
        "BQ_PROJECT": "<BQ_PROJECT>",
        "BQ_LOCATION": "<BQ_LOCATION>",
        "BQ_CODE_ASSET_LOCATION": "<BQ_CODE_ASSET_LOCATION>",
        "BQ_DATASET_ALLOWLIST": "<BQ_DATASET_ALLOWLIST>",
        "BQ_WARN_BYTES": "<BQ_WARN_BYTES>",
        "BQ_MAX_BYTES_BILLED": "<BQ_MAX_BYTES_BILLED>",
        "BQ_MCP_AUDIT_LOG": "<BQ_MCP_AUDIT_LOG>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
BQ_MCP_ENVIRONMENTS
Optional
JSON map of environment name to BigQuery settings (project, location, impersonate, dataset_allowlist, byte caps). Omit when using a config file at ~/.config/data-platform-mcp/config.toml.
BQ_MCP_DEFAULT_ENVIRONMENT
Optional
Environment used when a tool call omits the environment argument.
BQ_MCP_CONFIG
Optional
Path to a TOML config file, overriding ~/.config/data-platform-mcp/config.toml.
BQ_IMPERSONATE_SERVICE_ACCOUNT
Optional
Read-only service account to impersonate, making read-only a property of the identity rather than of this code. Create it with `data-platform-mcp setup`.
BQ_PROJECT
Optional
GCP project whose BigQuery datasets are queried. Falls back to the project associated with Application Default Credentials.
BQ_LOCATION
Optional
BigQuery location for jobs and datasets. Defaults to US.
BQ_CODE_ASSET_LOCATION
Optional
Region holding BigQuery Studio notebooks and saved queries. Separate from BQ_LOCATION and usually different: code assets are regional and Dataform rejects multi-regions, so datasets in US typically pair with code assets in a region like us-central1. A wrong region returns an empty list rather than…
BQ_DATASET_ALLOWLIST
Optional
Comma-separated dataset IDs the server may read. Empty means all datasets.
BQ_WARN_BYTES
Optional
Scan size above which a query is returned for user confirmation instead of run. Defaults to 1 GiB.
BQ_MAX_BYTES_BILLED
Optional
Hard per-query scan cap; a query estimated above this never runs. Defaults to 5 GiB.
BQ_MCP_AUDIT_LOG
Optional
Path for the JSONL tool-call audit log, or 'off' to disable it. SQL text is never recorded, only a hash and a length.

Details

Package[email protected] (PYPI, stdio)
First published22 Sep 2026
Last updated22 Sep 2026
Registry nameio.github.deBilla/data-platform-mcp

More databases servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.