Skip to content

BigQuery MCP Server API Reference

Production-ready BigQuery MCP server for secure querying of Google BigQuery datasets with configurable access controls

This reference provides detailed information about all available tools and their parameters.

Available Tools

list_datasets

Description: List all accessible BigQuery datasets in the project

Parameters: No parameters required

Example Usage:

mcp_platform call bigquery list_datasets
from mcp_platform.client import MCPClient

client = MCPClient()
result = client.call_tool("bigquery", "list_datasets", {})
curl -X POST http://localhost:8000/v1/call \
  -H "Content-Type: application/json" \
  -d '{"template_id": "bigquery", "tool_name": "list_datasets", "arguments": {}}'

list_tables

Description: List tables in a specific dataset

Parameters:

  • dataset_id (string) (required): Dataset ID to list tables from

Example Usage:

mcp_platform call bigquery list_tables
from mcp_platform.client import MCPClient

client = MCPClient()
result = client.call_tool("bigquery", "list_tables", {})
curl -X POST http://localhost:8000/v1/call \
  -H "Content-Type: application/json" \
  -d '{"template_id": "bigquery", "tool_name": "list_tables", "arguments": {}}'

describe_table

Description: Get detailed schema information for a table

Parameters:

  • dataset_id (string) (required): Dataset ID containing the table
  • table_id (string) (required): Table ID to describe

Example Usage:

mcp_platform call bigquery describe_table
from mcp_platform.client import MCPClient

client = MCPClient()
result = client.call_tool("bigquery", "describe_table", {})
curl -X POST http://localhost:8000/v1/call \
  -H "Content-Type: application/json" \
  -d '{"template_id": "bigquery", "tool_name": "describe_table", "arguments": {}}'

execute_query

Description: Execute a SQL query against BigQuery (subject to read-only restrictions)

Parameters:

  • query (string) (required): SQL query to execute
  • dry_run (boolean) (optional): Validate query without executing (default: false)

Example Usage:

mcp_platform call bigquery execute_query
from mcp_platform.client import MCPClient

client = MCPClient()
result = client.call_tool("bigquery", "execute_query", {})
curl -X POST http://localhost:8000/v1/call \
  -H "Content-Type: application/json" \
  -d '{"template_id": "bigquery", "tool_name": "execute_query", "arguments": {}}'

get_job_status

Description: Get status of a BigQuery job

Parameters:

  • job_id (string) (required): BigQuery job ID to check

Example Usage:

mcp_platform call bigquery get_job_status
from mcp_platform.client import MCPClient

client = MCPClient()
result = client.call_tool("bigquery", "get_job_status", {})
curl -X POST http://localhost:8000/v1/call \
  -H "Content-Type: application/json" \
  -d '{"template_id": "bigquery", "tool_name": "get_job_status", "arguments": {}}'

get_dataset_info

Description: Get detailed information about a dataset

Parameters:

  • dataset_id (string) (required): Dataset ID to get information for

Example Usage:

mcp_platform call bigquery get_dataset_info
from mcp_platform.client import MCPClient

client = MCPClient()
result = client.call_tool("bigquery", "get_dataset_info", {})
curl -X POST http://localhost:8000/v1/call \
  -H "Content-Type: application/json" \
  -d '{"template_id": "bigquery", "tool_name": "get_dataset_info", "arguments": {}}'

Integration Examples

For more integration examples and usage patterns, see the Usage Guide.

Support

For questions and issues related to the BigQuery MCP Server, please refer to: - Usage Guide for comprehensive examples - Template Overview for setup and configuration - MCP Platform Documentation for general platform usage