BigQuery MCP Server

BigQuery MCP Server

site icon
2025.03.28 0
TypeScript数据分析数据查询数据库访问数据库
BigQuery MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,专门用于访问 Google BigQuery。该服务使大型语言模型 (LLMs) 能够理解 BigQuery 数据集结构并执行 SQL 查询。
View on GitHub

Overview

基本能力

产品定位

BigQuery MCP Server 是一个中间件服务,旨在为大型语言模型提供与 Google BigQuery 交互的能力,使其能够查询和分析 BigQuery 中的数据。

核心功能

  1. 认证与连接管理
  2. 支持应用默认凭证 (ADC) 或服务账户密钥文件
  3. 可配置的项目 ID 和位置设置
  4. 启动时进行认证验证

  5. 工具集

  6. query: 执行只读 (SELECT) BigQuery SQL 查询
  7. list_all_datasets: 列出项目中的所有数据集
  8. list_all_tables_with_dataset: 列出特定数据集中的所有表及其模式
  9. get_table_information: 获取表模式和样本数据
  10. dry_run_query: 检查查询有效性并估算成本

  11. 安全特性

  12. 仅允许 SELECT 查询(只读访问)
  13. 默认限制查询处理量为 500GB 以防止过高成本
  14. 对分区表的过滤器建议
  15. 安全处理认证凭证

适用场景

  • 数据分析
  • 数据探索
  • 数据可视化
  • 机器学习数据准备

使用教程

使用依赖

  1. 安装 Google Cloud SDK(如需使用应用默认凭证) ```bash # For macOS brew install --cask google-cloud-sdk

# For other platforms, see: https://cloud.google.com/sdk/docs/install ```

  1. 运行认证命令 bash gcloud auth application-default login

安装教程

本地安装

# Clone the repository
git clone https://github.com/yourusername/bigquery-mcp-server.git
cd bigquery-mcp-server

# Install dependencies
bun install

# Build the server
bun run build

# Install command to your own path.
cp dist/bigquery-mcp-server /path/to/your_place

Docker 安装

# Build the Docker image
docker build -t bigquery-mcp-server .

# Run the container
docker run -it --rm \
  bigquery-mcp-server \
  --project-id=your-project-id

调试方式

使用 inspector 进行测试和调试:

npx @modelcontextprotocol/inspector dist/bigquery-mcp-server --project-id={{your_own_project}}

工具列表

  1. query: 执行只读 BigQuery SQL 查询
  2. list_all_datasets: 列出项目中的所有数据集
  3. list_all_tables_with_dataset: 列出特定数据集中的所有表及其模式
  4. get_table_information: 获取表模式和样本数据
  5. dry_run_query: 检查查询有效性并估算成本

常见问题解答

  • 认证失败: 确保已正确设置应用默认凭证或服务账户密钥文件
  • 权限问题: 确保服务账户或用户凭证具有必要的 BigQuery 权限
  • 查询错误: 检查查询语法是否正确,特别是对于分区表的查询
  • 数据处理限制: 注意默认的 500GB 处理限制,可通过参数调整

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。